超シンプルな自動売買プログラム(4) MACD&RSI
公開日:
:
マネー
バウンド
インターナショナル・ラグジュアリー・メディア 2012-03-23
売り上げランキング : 186567
by G-Tools
前回と前々回紹介した「稼ぐ人のFX」というMOOKの第一号に多田さんというトレーダーの手法が載っていました。
MACD&RSI
- MACD のシグナルとのクロス
- RSI の値(70以上で売り、30以下で買い)
- ローソク足のパターン
で売買シグナルとエクシットを決めるものです。
下のようにプログラムしてテストしてみましたが、さっぱりいい成績が出ませんでした(2014/1/1-2015/1/1)。
売買回数がどれもヒトケタで少なすぎます。
エントリ条件を少しゆるめてみても同じ。
どこか間違っているのでしょうか。
関連記事
超シンプルな自動売買プログラム(5) MACD&RSI(続き)
プログラムソース
// // yasciiSimple04 MACD & RSI // //マジックナンバーの定義 #define MAGIC 42105 //パラメーターの設定// extern double Lots = 1.0; //取引ロット数 extern int Slip = 10; //許容スリッページ数 extern string Comments = "Simple03"; //コメント extern int Fast_EMA_Period1 = 6; extern int Slow_EMA_Period1 = 19; extern int Signal_Period1 = 6; extern int RSI_Period = 14; //変数の設定// 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 MACD_Main1 = iMACD(NULL, 0, Fast_EMA_Period1 , Slow_EMA_Period1, Signal_Period1, PRICE_CLOSE, MODE_MAIN, 1 ); double MACD_Sign1 = iMACD(NULL, 0, Fast_EMA_Period1 , Slow_EMA_Period1, Signal_Period1, PRICE_CLOSE, MODE_SIGNAL, 1 ); double MACD_Main2 = iMACD(NULL, 0, Fast_EMA_Period1 , Slow_EMA_Period1, Signal_Period1, PRICE_CLOSE, MODE_MAIN, 2 ); double MACD_Sign2 = iMACD(NULL, 0, Fast_EMA_Period1 , Slow_EMA_Period1, Signal_Period1, PRICE_CLOSE, MODE_SIGNAL, 2 ); double RSI1 = iRSI(NULL,0,RSI_Period,PRICE_CLOSE,1); //買いポジションのエグジット OS1 = OrderSelect(Ticket_L, SELECT_BY_TICKET); OOPL = OrderOpenPrice(); if( RSI1 >= 70.0 || MACD_Main1 < MACD_Sign1 || MathAbs(Close[1]-Open[1]) > 2.0*MathAbs(Open[2]-Close[2]) || MathAbs(Close[1]-Open[1])< 0.25*MathAbs(Close[2]-Open[2]) && (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( RSI1 <= 30.0 || MACD_Main1 > MACD_Sign1 || Close[1] >Open[1] && Close[2] >Open[2] || MathAbs(Open[1]-Close[1])> 2.0 * MathAbs(Open[2]-Close[2]) || MathAbs(Close[1]-Open[1])< 0.25*MathAbs(Close[2]-Open[2]) && (Ticket_S != 0 && Ticket_S != -1 )) { Exit_S = OrderClose(Ticket_S,Lots,Ask,Slip,Red); if( Exit_S ==1 ) {Ticket_S = 0;} } //買いエントリー if( RSI1 <= 30.0 && MACD_Main1 > MACD_Sign1 && MACD_Main2 < MACD_Sign2 && Close[1] > Open[1] && Close[2] > Open[2] && ( 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( RSI1 >= 70.0 && MACD_Main1 < MACD_Sign1 && MACD_Main2 > MACD_Sign2 && Close[1] < Open[1] && Close[2] < Open[2] && ( 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); }
###
]]>関連記事
-
[FX] しろふくろうさんの Easy Trade システムの EA化
『FXメタトレーダーで儲けるしろふくろうのスーパー投資術』という良書で紹介されている「しろふ
-
【FX】Algo Plus という EA
昨日の記事「【FX】2024年1月集計」でちょっと紹介した Algo Plus という EA(MT4
-
[FX] 外為ファイネストで「早起きは5pipsの得」
1時間ほど前に開いた外為ファイネストのデモ口座ですが、「早起きは5pipsの得」を稼働させて
-
【FX】2024年1月集計
運用中の FX 口座(14口座)の 2024年1月の集計ですが、この月から通常口座とテスト口座に分け
-
いろんなシステムの総括
QQE の弱点を前回指摘しましたが、メインウィンドゥに 平均足移動平均線クロス
-
【FX】2023年11月 決算
「【FX】2023年11月第3週までの決算」の続きです。 今月の全口座の決算が出ました