俺にも執筆活動させろボケ

動画の埋め込みテスト兼ねたルールの確認とNT7バックテスト


茜色が燃えるとき - Scoobie Do - YouTube

 

”今いるこの場所はすり減るだけのゲーム それなら俺はただ笑うだけで勝てるはず”

”今いるここからは落ちてくだけのゲーム それならそう誰もが踊るだけで勝てるはず”

Scoobie Doの茜色が燃えるときから一部引用

 

何かで勝ちたかったらまずルールの確認は最重要事項です。

勝ちも負けもないゲームをやっても勝てるはずがないのだから。

 

さて前置きが長くなったけどNinjaTrader7でいよいよバックテストの部分の説明に取り掛かろうと思います。

その前にちょっとバックテストにつかうストラテジーを作りましょう。

いやほんとクリックするだけですごく簡単にできます。

NinjaTrader7の特徴としてGUIのみでストラテジー(MT4でいうところのEA)が作れてしまいます。

では実際にやってみましょう。

tools→New NinjaScript→Strategyと進んで

f:id:nemui3900:20141001130456j:plain

名前を入れて軽く説明も入れます。

軽くでいいですなぜなら説明してもしばらくしたら自分で作ったはずなのに忘れるからね。

Calculate on bar close(終値の出来上がるタイミングでルールを使う)にチェックを入れておく。

f:id:nemui3900:20141001130655j:plain

最適化やバックテストで使う変数(パラメーター)の設定です。

ここではモメンタムの期間のみを設定します。

f:id:nemui3900:20141001131138j:plain

set1のtabにAddでルールを設定していきます。

インディケーターからモメンタムを選択

f:id:nemui3900:20141001131228j:plain

さらにParametersの欄のPeriodのところをUser defind inputsから

さっき設定したMomPeriodを選択。

 

f:id:nemui3900:20141001131904j:plain

真ん中のプルダウンから大なりを選択してUser variablesの0を選択

Bars agoは何日前のモメンタムを参照するかです、クローズしたタイミングのみのルールなのでそのまま0にしておきます。

さらに下の方のAddボタンで売買のルールを足します。

f:id:nemui3900:20141001132545j:plain

ショートポジションを決済。

f:id:nemui3900:20141001132603j:plain

ロングポジションを持つ。

 

の2つのを追加してドテン売買のルールにします。

さらにこのままだと一方向に動いた時どんどんポジションが膨れ上がっていくので

f:id:nemui3900:20141001132945j:plain

StrategyのCurrent market position != Long

としてロングのポジションを持っているときは何もしないよう(単一ポジションでのテスト)にします。

f:id:nemui3900:20141001133224j:plain

セット1の完成図です。

作ったSET1のルールは

0日前の期間N(MomPeriod)のモメンタムが0より大きくてロングポジションを持ってない時に

ショートポジションは決済してロングポジションを建てる。

 

ではSET2に行きます

ルールは逆にします

0日前の期間N(MomPeriod)のモメンタムが0より小さくてショートポジションを持ってない時に

ロングポジションは決済してショートポジションを建てる。

で作って見てください。

 

SET2を埋めたらあとはNextを押していきFinishまで行きます。

これにて完成です。

ようはルールを間違えないように作ることさえ出来ればそんなに難しくないはずです。

 

実際につかってみる前に一手間。

tools→Instrument Managerを開いて

f:id:nemui3900:20141001134452j:plain

Instrument listにKUを追加します

Nameの欄にKUで◀ボタンで全部入れてOKでlistを作っておいてください。

 

できたらいよいよバックテストに進みます。

File→New→Strangely Analyzerを開いて

左のリストからKUをクリックして$KUAUDを右クリックしてバックテストを開きます、止めピンみたいなのをクリックして先ほど作った

NemuiMomentumを開いて

f:id:nemui3900:20141001141116j:plain

MomPeriodを12  Date seriesをMinute で15(15分足)

※サーバーとの接続がある場合は切っておかないと仮想通貨なのでそんな通貨無いけど的なメッセージが流れるので切ってからやります。

期間は今年でやってみましょうLet's Run

 

 結果が出たらまずChartを開き右クリしてインディケーターを入れます

f:id:nemui3900:20141001142743j:plain

ちゃんとルール通りなっているか確認してみましょう。

できていたら初めて結果の確認を行えます。

ちなみにクローズしてからなのでこれで正常なタイミングです。

この確認は非常に重要なので必ず最初にやりましょう。

 

f:id:nemui3900:20141001143322j:plain

f:id:nemui3900:20141001143343j:plain

サマリーと損益グラフ

見事な逆行っぷりですね。ということは!!

 

逆のルールでやってみよう。

f:id:nemui3900:20141001143921j:plain

やったぜ!!とは行かないもので

これはスプレッドが反映されていません。

困ったことにKU-Powerは対数変化率をただチャート状に加工しただけなのでスプレッドがありません。

なので手数料として擬似的にスプレッドを付けてやります。

リストのKUAUDをダブルクリックしてEditorを開く

MiscのタブSimulatorの欄に0.02として

一回に2円徴収します。

f:id:nemui3900:20141001144923j:plain

KU-Powerは対数変化率なので単純に2pips×2(両側分)という手数料にはならないのを注意してください、

あくまで擬似的なスプレッドです。

 

GenneralのInclude commissionをTrueにすることで設定した手数料を反映することができます。

f:id:nemui3900:20141001145108j:plain

 

さあ手数料込みの結果を見ると一目瞭然で駄目ですね。

今回は2円にしたけど手数料は自分で用途に合うようにうまいこと設定してください。

 

NT7のバックテストはいかがだったでしょうか。

ひと通りやってみてお分かりでしょうNinjaTraderのいいところはインディケーターさえ作れれば本当に簡単にGUIのみで全く新しい自分のみのストラテジーを作れることにあります。

もちろん既存のインディケーターでもできます。

それではみなさんNinjaTrader7で良いバックテスト三昧を。