takahのEA開発ブログ

MetaTrader4(MT4)上で動く自動売買ソフト(EA)の開発をしています。 自作EAの紹介や無料EAの配布など、EAに関することを思うままに書いております。

私のEAは年末年始(主に12/21~1/4)は取引をしないようにしています。

年末年始の閑散期は相場がイレギュラーな動きをしますし、何より海外ではXmasはお休みになることが多いので、素直に取引をしないようにしています。

なので、フォワード計測も来週で今年の取引が終了になります。
さて、2017年はどんな結果になるのでしょうね??

今のところ、KoHがこのままだと12月はマイナスになるかもしれないので、がんばってほしいところです(年ベースではプラスですが…)。
RSS このエントリーをはてなブックマークに追加

私がEAを開発する際、心がけていることを書かせていただきます。

■EAについて

エントリー、決済はローソク足確定後に行うこと
ティック起動だと正確なバックテストができないため、このようなEAは私の専門外としております。

過去10年で片側1ポジションで1,000件以上の取引があること
取引が少ないとEAの有効性が判断できないためです。

リカバリーファクター(総利益÷最大ドローダウン)が10以上であること
リカバリーファクターは「復帰力」と考えております。リカバリーファクターを10以上だとすると、最大ドローダウンが起こってもその10倍は利益を出せる計算になるため、EAの有効性を判断できると考えております。
ちなみに、よく言われるプロフィットファクター(PF:総利益÷総損失、これが1以下だと資産がマイナスになります)は1以上であれば利益が出ていることになりますので、あまり意識はしておりません。

イレギュラーケースを考慮した設計を行うこと
EAは作者が想定された範囲の中で取引を行い、その範囲の中でどれだけ利益を上げるかだと考えております。
そのため、想定の範囲外になるような取引を極力行わないような設計を心がけております。
具体的には、何らかの事情でエントリーや決済ができなかった場合などのリトライ処理や過度なスプレッドの開きでエントリーを行わないようにする処理(スプレッドフィルター)、エントリーを許容するスリッページの設定などをEAに組み入れるようにしております。

過剰最適化は行わないこと
私が定義する過剰最適化は、ある短期的なトレードのみを改善する目的でエントリーや決済のロジックを変更することを指しております。
このような設計をすると極端に成績を上げることができますが、フォワードとの乖離が起こりやすくなります。

必ずフォワードテストを行うこと
開発はバックテストで行いますが、必ずバックフォーワードテスト、フォワードテストを一定期間行い、バックテストとフォワードテストとの乖離を判断し、EAの有効性を判断するようにしております。

■バックテストについて

信憑性のあるヒストリカルデータでバックテストを行うこと
色々と使わせていただいた結果、現在はDukasCopy社のヒストリカルデータを使用させてただいております。
(過去にとあるFX会社のヒストリカルデータを使用させていただいたことがあるのですが、データ欠損が多く使い物にならなかったので、私自身が納得の行くヒストリカルデータを使用させていただいております)

基本的に「全モデル」でバックテストを行うこと
エントリー数が多くなり、バックテストに時間がかかりすぎる場合など特別な事情がある場合を除き、バックテストは「全モデル」で行います。
(「エントリーポイント」や「始値のみ」だと成績が良くなってしまう可能性があり、フォワードテストとの乖離が起こる可能性があるためです)

適切なスプレッドでバックテストを行うこと
EURUSDの場合は最低でもスプレッド10以上で行うこととし、現実的なスプレッドでのバックテストを行います。


その他にも条件がありますが、追々追記しています。。。
RSS このエントリーをはてなブックマークに追加

SoRAシリーズの3つめはEA11-HISoRA-です。
2_H4_20171023

HISoRAはAoSoRAのEURJPY版なのですが、現時点では4時間足しかありません。。。
元々は5分、15分、30分、1時間軸もつくっていたのですが、数字が良くならなかったので、現状は4時間足のみフォワードに回しています。
個人的にはお蔵入りさせようかと思ったのですが、フォワードだけでも回しておくと何かの役に立つかもしれないと思い、ひっそり動かしています。
いずれテコ入れするかもしれませんが、個人的には一番プライオリティが低いEAです。
その割に結構フォワードを積んできているが困ったところなのですが…(汗
RSS このエントリーをはてなブックマークに追加

↑このページのトップヘ