FXボーグ | テクニカル実験室

テクニカル分析を使った自動売買プログラムの開発に挑戦!

スポンサーリンク

IsoKineticチャートでバックテストを行うには・・・

IsoKineticチャートでバックテストを行ってみました。NinjaTrader8では自作のバータイプを作成してバックテストを行うことが出来るので、昔作ったインジケーターに少し手を加えて単純な順張りシステムを作って試してみました。また、ヒストリカルデータにはこの前のティックデータを使用しています。

▼カスケード・トレンド・システム

f:id:fxborg:20170814020615p:plain

  • 上段・・・USDJPY IsoKinetic チャート(サイズ:20pip)
  • 中断・・・カスケード・ストレングス・インジケーター
  • 下段・・・カスケード・トレンド・インジケーター
続きを読む

NinjaTrader8版 Isokinetic チャートをアップしました。

NinjaTrader8でもIsoKinetic チャートを作ってみました。NinjaTraderではバータイプを自作できるので既存のインジケーターも普通に適用できます。以前作ったSnRインジケータを一緒に表示してみました。こんな感じです。

f:id:fxborg:20170805095848p:plain(EURUSD  15分足 vs  IsoKinetic チャート(しきい値:20pip)) 

続きを読む

1pipフィルターを使ってDUKASCOPYのTickデータを97%削減

このところ仕事や私事が忙しくブログが書けずにいましたが、ようやく落ち着いてきました。・・・で、非時系列のisokinetic チャートを使ったバックテスト環境を自作しようかと考えていたのですが、改めてNinjaTrader8の機能を確認したところ、全てデフォルト機能で対応できることが判明しました・・・。(結構ショック)

NinjaTraderのよいところ

  1. 1.ティックデータをインポートできる(AskとBidの両方に対応)
  2. 2.ティックベースのバックテストに対応。
  3. 3.バーの生成ロジックをカスタマイズできる。
  4. 4.カスタムバー(3.で定義したバー)でバックテスト可能。 

ただしティックが使えるといっても、そのままではサイズがでか過ぎて速度的に使いモノになりません。例えばUSDJPYのティックデータは5年で5GBを超えてしまいます。

そこで1pip未満の変動を無視するようにしたところ118MBまでサイズを落とせました。

f:id:fxborg:20170730183453p:plainこれならバックテスト速度も期待できそうです。

続きを読む

ティックを使用した非時系列足「isokinetic chart v2.0」をアップしました。

isokinetic chart v2.0をアップしました。今回はバーの生成にティックを使用しています。isokinetic chart については以前の記事をご覧ください。

以下はUSDJPY15分足との比較です。

f:id:fxborg:20170717014138p:plain上段:USDJPY15分足、下段:isokinetic chart

続きを読む

LXCの導入から非特権コンテナ用の設定とIPの固定化まで

VPS上のMT4がCPUを圧迫していたので対処法を調べたところ、LXCというパッケージを使うことでリソースの制御ができるようです。LXCについては以下のページが参考になりました。

Lxc で始めるケチケチ仮想化生活?!
LinuxコンテナとLXC入門 (2015-09-13) / 1st kistudy 
15分で分かるLXC(Linux Containers)の仕組みと基本的な使い方 - さくらのナレッジ

リソースさえあれば1つのサーバーにたくさんのコンテナを作れるのですが、デフォルトだと起動するたびにIPアドレスが変わってしまうので、IPを固定する方法についても調べてみました。 

f:id:fxborg:20170710000148p:plain
ソースはこちらの記事
おっさんエンジニアの実験室: lxcのdnsmasqでコンテナのIPアドレス管理 

続きを読む

Xvfbでヘッドレス MT4環境を構築

Xvfb (X virtual framebuffer) は X11の仮想ディスプレイを作るソフトウェアです。これを使うとMT4のように画面が必要なソフトをGUIなしで起動することが可能です。

【参考リンク】 http://www.tsukune.org/skk/memo/index.php?Xvfb 

この前の isokinetic チャートを検証するには、ヒストリカルデータやチャートソフトも自前で用意した方がよさそうだと思い至り、とりあえずMT4のTickをZMQ経由で扱いPythonなどの言語に流すような方向で環境を作ることにしました。

MT4のTerminal.exe を Wineで動かすと結構 CPU負荷が高かったので、負荷を軽減する方法について調べていると以下のロシア語の記事に行き当たりました。

起動スクリプトもあってなかなかよさげです。

続きを読む

レンタルサーバーにSoftEther VPN を導入 (Debian7.8)

レンタルサーバーにSoftEther VPN を導入しました。これでどこからでも安心して繋げるハズ。いくつかハマッた点もあるので備忘録として載せておきます。

SoftEther VPN はオープンソースの、無償で、複数プラットフォームおよび複数 VPN プロトコル対応の VPN ソフトウェアであり、筑波大学における研究プロジェクトとして開発されています。
( https://ja.softether.org/ より引用)

実際に使ってみて分ったのですが、通常のVPNとはずいぶんしくみが異なっていて、LANカード、LANケーブル、ハブといったデバイス自体を仮想化することで、物理的には接続不可能な端末同士を仮想デバイスで接続するというようなことを行っています。

f:id:fxborg:20170623224721p:plain( https://ja.softether.org/ より引用)

再インストールしたのでOSの初期設定から行います。

続きを読む