超シンプルな自動売買プログラム(8) 3点チャージ変法
公開日:
:
最終更新日:2015/02/24
マネー
3点チャージ法という明地文男さんの開発した株式投資法があります。
昔ちょっと利用したことがあります。
大きく下げたときの買い(グランビルの”買い4”ですかね)を行う逆張り法です。
買いの条件は次の通りです。
・ 26日移動平均線からの乖離率 ≦ -15%
・ 14日 RSI ≦ 25
・ 25日ボリュームレシオ ≦ 70
売りの条件は
・ 26日移動平均線からの乖離率 ≧ -15%
・ 14日 RSI ≧ 70
・ 25日ボリュームレシオ ≧ 250
とします。
これを FX に応用しようと思ったのですが、FX では出来高がないのでボリュームレシオが計算できません。
ティックで代用するのも正確でありません。
どうせなので、この前作った Chande’s Momentum Oscillator シャンデ・モメンタム・オシレーター (CMO) を使わせていただくことに。
CMO が 30以下、70以上というふうに代用することにします(適正値はバックテストでも出しましたが大きく変わらないのでこの値を採用)。
*
もう一つ問題が。
乖離率が 15% を超えるなんて事態は FX では起こりません。国家倒産とか起これば別ですが。
そこで乖離率は可変にしてバックテストで適正値を決めることにしました。
*
さらにもう一つ問題が。
決済条件は任意ということで、決められておりません。
しょうがないので固定ロスカット、固定プロフィット、HLバンドトレーリングストップでやってみることにします。
固定ロスカット、固定プロフィットは影響がないようですが、念のため残しました。
乖離率が 1/3 になるくらいまでとかのほうがいいかもしれないと思ったので、それも加えました。
*
これらを組み込んで、EA を自作してみました。
次のようなところで売買が発生します。うまくいっているようです。
結果 ドル円 30分足 2014/1/1 – 2015/1/1
プロフィットファクターや勝率はそこそこいいです。
他の通貨ペアもやってみましたが、どうも金額的にはたいしたことになりません。
逆張りなのでどかんとは稼げないのはわかっていますが・・・
最大ドローダウンは低いのですが、取引数が少ないことが問題でしょうね。
2014/4/9 から 2014/10/14 まで全く売買がないです。このような”逆張り好機”がそんなに訪れないのが原因でしょう。
株なら銘柄数がFXよりはるかに多いので取引回数が多くなるでしょうから、株では非常に有効なのでしょうが。
プログラムソース
// // yasciiSimple07 // 3点チャージ法 // cmo_s.mq4 が必要 //マジックナンバーの定義 #define MAGIC 42112 //パラメーターの設定// extern double Lots = 1.0; //取引ロット数 extern int Slip = 10; //許容スリッページ数 extern string Comments = "Simple07"; //コメント extern int MA_period = 26; extern int RSI_period = 14; extern int Fast_period =10; extern bool LastBarOnly = false; extern int CMO_Range = 25; extern int Sig_Period =9; extern double kai1level = 1.9 ; extern double kai2level = -0.6 ; extern double ILC = 20.0 ; extern double TP = 40.0 ; //変数の設定// int Ticket_L = 0; //買い注文の結果をキャッチする変数 int Ticket_S = 0; //売り注文の結果をキャッチする変数 int Exit_L = 0; //買いポジションの決済注文の結果をキャッチする変数 int Exit_S = 0; //売りポジションの決済注文の結果をキャッチする変数 int OS1 ; int OS2 ; double OOPL; double OOPS; int start() { if (Volume[0]>1 || IsTradeAllowed() == false) return(0) ; double sma26 = iMA( NULL, 0, MA_period, 0, 0, PRICE_CLOSE, 1) ; double kairi1 = 100.0 * (Close[1] - sma26) / sma26 ; double rsi14 = iRSI( NULL, 0, RSI_period, PRICE_CLOSE, 1) ; double cmo25 = iCustom( NULL, 0, "cmo_s" , LastBarOnly , CMO_Range , Sig_Period , 0, 1 ) ; double FastHH2 = Low[iHighest(NULL, 0, MODE_CLOSE, Fast_period, 2)]; double FastLL2 = High[iLowest(NULL, 0, MODE_CLOSE, Fast_period, 2)]; double lc = ILC; if(( Digits ==3 ) ||(Digits ==5)) lc = lc*10.0 ; double tp = TP; if(( Digits ==3 ) ||(Digits ==5)) tp = tp*10.0 ; //買いポジションのエグジット OS1 = OrderSelect(Ticket_L, SELECT_BY_TICKET); OOPL = OrderOpenPrice(); if( (Close[1] < OOPL - lc*Point || Close[1] > OOPL + tp*Point || Close[1] < FastHH2 || kairi1 > kai2level /3.0) && (Ticket_L != 0 && Ticket_L != -1 )) { Exit_L = OrderClose(Ticket_L,Lots,Bid,Slip,Blue); if( Exit_L ==1 ) {Ticket_L = 0;} } //売りポジションのエグジット OS2 = OrderSelect(Ticket_S, SELECT_BY_TICKET); OOPS = OrderOpenPrice(); if( (Close[1] > OOPS + lc*Point || Close[1] < OOPS - tp*Point || Close[1] > FastLL2 || kairi1 < kai1level /3.0
) && (Ticket_S != 0 && Ticket_S != -1 )) { Exit_S = OrderClose(Ticket_S,Lots,Ask,Slip,Red); if( Exit_S ==1 ) {Ticket_S = 0;} } //買いエントリー if( kairi1 <= kai2level && rsi14 <= 25.0 && cmo25 <= 30.0 && ( Ticket_L == 0 || Ticket_L == -1 ) && ( Ticket_S == 0 || Ticket_S == -1 )) { Ticket_L = OrderSend(Symbol(),OP_BUY,Lots,Ask,Slip,0,0,Comments,MAGIC,0,Blue); } //売りエントリー if( kairi1 >= kai1level && rsi14 >= 70.0 && cmo25 >= 70.0 && ( Ticket_S == 0 || Ticket_S == -1 ) && ( Ticket_L == 0 || Ticket_L == -1 )) { Ticket_S = OrderSend(Symbol(),OP_SELL,Lots,Bid,Slip,0,0,Comments,MAGIC,0,Red); } return(0); }
###
関連記事
-
超シンプルな自動売買プログラム(11) 前週の平均値と逆張り(4) さらに改良型
前回の記事「超シンプルな自動売買プログラム(11) 前週の平均値と逆張り(3) 改良型」ですが、
-
HL Band(High Low Band) について
チャートでは HL Band というのをよく使います。 High Low Band の略で、あ
-
【FX】Dark Venus という自動売買ソフト(2)
前回の記事「【FX】Dark Venus という自動売買ソフト」の続きです。 昨日夜からデモ走
-
スイスフラン暴騰騒動(2)
以前の記事「スイスフラン暴騰騒動」でも書きましたが、スイス銀行のおかげでスイスフランが一瞬で高騰
-
【FX】Yetti という EA
またまた FX の話です。 Yetti(イエティ)という自動売買プログラムがあります。
-
株式投資「システムトレード」の極意―3年5ヶ月で5億円の資産を築いた! / 保田 望
株式投資「システムトレード」の極意―3年5ヶ月で5億円の資産を築いた! 保田
-
【FX】IS Lime という EA
IS シリーズの EA は IS Black, IS White, IS Red とデモトレードで検
-
[FX] Powerful 1 Min Scalping System というトレードシステム
Powerful 1 Min Scalping System という人気のトレードシステムがあるそう
-
医療費39兆2千億円 過去最高(3)
特にTVのバカキャスターですが、「医療費が高額になってたいへん」と無知からくるデマを散布しており