【無料EA】複数ロジックを組み合わせたEA MultipleStrategy

1つのEAで、複数ロジックをポートフォリオする。

システムトレードはポートフォリオが命。
トレンド相場に強いEAとレンジ相場に強いEAを組み合わせて運用するのが基本です。

今回紹介するEAは、「じゃあ手っ取り早く色々な種類のロジックを同時運用して、そのとき調子のいいロジックのロットを上げてやるようにできれば、より強力なポートフォリオが実現できるのでは!?というのを目論んで作成したものです。

ロジックとしては、以下の4通りを入れ込んでみました。

  1. ロジックA:MAクロスによるロジック([TankiMA] が [ChokiMA]をゴールデンクロスで買い、デッドクロスで売り)
  2. ロジックB:RSIによるロジック(RSIが [OverBoughtJudge] 以上で売り、RSIが [OverSoldJudge] 以下で買い)
  3. ロジックC:MACDクロスによるロジック(MACDがシグナル線を上抜いたときに買い、下抜いたときに売り)
  4. ロジックD:シグナル線が基本線を上抜き+[BuyThreshold] 以下で買い、下抜き+[SellThreshold] 以下で売り

その結果は・・・、まあ、微妙でしたw いわゆる「ゴミEA」に分類されてしまう可能性すらあります。
使い方によっては活躍できる可能性はあるような気もするようなしないような・・・まあ、レンジ系のロジックが微妙ですね。
ちゃんとしたレンジトレードをロジックに組み込むのって、結構難しいんですよね。

—————————–<EAの説明>————————————-
【使用する足、通貨ペア】
・ドル円、4時間足~日足

【設定パラメータ】
・StartLots = 0.05
→ 初期Lot数(最小0.01)です。
・MaxLots = 0.1
→ 最大でもこのロット数となるようにします。
・LotStep_UP = 0.01
→ 利確時、次回エントリーで上げるロット数を設定します。
・LotStep_DOWN = 0.01
→ 損切り時、次回エントリーで下げるロット数を設定します。
・spreadfilter = 1
→ エントリー時のスプレッド上限値を設定します(これ以上のスプレッドだとエントリーしません)。
・Slippage = 1
→ 許容スリッページをPips単位で指定します。

・useLogicA_MA = true
→ MAクロスロジックを使うかどうか設定します。
・MagicNo_LogicA = 40000
→ MAクロスロジックで使用するマジックナンバーを指定します。
TankiMA = 5
ChokiMA = 21
sl_pips_LogicA = 100
tp_pips_LogicA = 200
→ MAクロスロジックの各種パラメータ設定です。

・useLogicB_RSI = true
→ RSI判定ロジックを使うかどうか設定します。
・MagicNo_LogicB = 40001
→ RSI判定ロジックで使用するマジックナンバーを指定します。
・RSI_Period = 14
・OverBoughtJudge = 80
・OverSoldJudge = 20
・sl_pips_LogicB = 100
・tp_pips_LogicB = 100
→ RSI判定ロジックの各種パラメータ設定です。

・useLogicC_MACD = true
→ MACD判定ロジックを使うかどうか設定します。
・MagicNo_LogicC = 40002
→ MACD判定ロジックで使用するマジックナンバーを指定します。
・fast_ema_period = 12
・slow_ema_period = 26
・signal_period = 9
・sl_pips_LogicC = 100
・tp_pips_LogicC = 150
→ MACD判定ロジックの各種パラメータ設定です。

・useLogicD_Stochas = true
→ ストキャスティクス判定ロジックを使うかどうか設定します。
・MagicNo_LogicD = 40003
→ ストキャスティクス判定ロジックで使用するマジックナンバーを指定します。
・K_period = 9
・D_period = 3
・Slowing = 3
・BuyThreshold = 30
・SellThreshold = 70
・sl_pips_LogicD = 100
・tp_pips_LogicD = 100
→ ストキャスティクス判定ロジックの各種パラメータ設定です。

【エントリ条件】
・各ロジックのエントリ条件を満たした場合
・エントリ時のロット数は、[前回エントリ時のロット数] + [LotStep_UP] (前回利確した場合) - [LotStep_DOWN](前回損切りした場合)となる

【イクジット条件】
・各ロジックのイクジット条件を満たした場合
・テイクプロフィット達成、またはストップロスにかかる
——————————————————————————

デフォルトの条件にて、ドル円1時間足で2012年10月~2016年9月現在までの4年間(何故か4年分しかデータが取れませんでした)でバックテストを行ってみた結果が以下です(スプレッドは1.0Pips)。
単一ロジックではあまり見たことのない損益グラフを描いています。
アベノミクスでトレンド系ロジックが活躍したのがよくわかりますが、それ以降はジリジリ負けていってる感じです。現在は通用しないかもしれません。使用に際しては要注意ですね。

multiplestrategy-score

multiplestrategy-損益グラフ

微妙かもしれませんが、興味のある方は以下よりダウンロードください。

MultipleStrategy

単純ロジックを組み合わせたポートフォリオ型EA。

調子の良いロジックのロット数を自動的に上げ、逆に調子の悪いロジックのロット数を自動的に下げることで利益を上げやすくなるように工夫しました。