*

超シンプルな自動売買プログラム(9) RSI クロス

公開日: : マネー

超シンプルな自動売買プログラム として RSI とそのシグナル(直前3本の平均値)とのクロスを考えてみました。

RSI はオシレーター系では最も有名なものですね。

  • 買い RSI がBuyLevel 以上のときに RSI が上昇(シグナルを上抜け)
  • 売り RSI がSellLevel 以下のときに RSI が下降(シグナルを下抜け)
  • 決済 逆のサインが出たとき または 固定ロスカットにひっかかったとき

 

結果

2014/1/1 – 2015/1/1 ドル円 4時間足

最適化した後のパラメーターは RSI Period = 11、BuyLevel = 48、SellLevel =52 です。

固定ロスカットはつけましたが、ほとんど無意味です。

利益曲線を見るとトレンド時に頑張るタイプです。RSI はオシレーターのくせにヘンですよね。

まあ、RSI のシグナルとのクロスなので RSI の上昇が買いのサイン、下降を売りのサインとみなしているわけですから、順張りとしての使い方です。そう考えるとヘンではないでしょう。

オシレーターっぽいところかな、と思うのは、トレンドのないときのロスが比較的少ないところでしょうか。

プログラムソース

//
// yasciiRSI01.mq4
//

//マジックナンバーの定義
#define MAGIC  42531        

//パラメーターの設定//
extern double Lots = 1.0;     //取引ロット数
extern int Slip = 10;         //許容スリッページ数
extern string Comments =  "yasciiRSI01"; //コメント

extern int RSI_Period = 14 ;
extern double BuyLevel = 50.0;
extern double SellLevel = 50.0;

extern double ILC = 40.0 ;

//変数の設定//
int Ticket_L = 0; //買い注文の結果をキャッチする変数
int Ticket_S = 0; //売り注文の結果をキャッチする変数
int Exit_L = 0;   //買いポジションの決済注文の結果をキャッチする変数
int Exit_S = 0;   //売りポジションの決済注文の結果をキャッチする変数
int OS ;

int start()
  {

    if (Volume[0]>1 || IsTradeAllowed() == false) return(0) ;

      double RSI_MAIN1 = iRSI(NULL, 0, RSI_Period , PRICE_CLOSE, 1 );
      double RSI_MAIN2 = iRSI(NULL, 0, RSI_Period , PRICE_CLOSE, 2 );
      double RSI_MAIN3 = iRSI(NULL, 0, RSI_Period , PRICE_CLOSE, 3 );
      double RSI_MAIN4 = iRSI(NULL, 0, RSI_Period , PRICE_CLOSE, 4 );
      double RSI_Signal1 = (RSI_MAIN1 + RSI_MAIN2 + RSI_MAIN3)/3.0 ;
      double RSI_Signal2 = (RSI_MAIN4 + RSI_MAIN2 + RSI_MAIN3)/3.0 ;

   double lc = ILC;
   if(( Digits ==3 ) ||(Digits ==5)) lc = lc*10.0 ;

   //買いポジションのエグジット
   OS = OrderSelect(Ticket_L, SELECT_BY_TICKET);  
   if(    ((RSI_MAIN1 < RSI_Signal1 && RSI_MAIN2 >= RSI_Signal2) ||( OrderOpenPrice() - lc * Point >= Close[1]))
       && ( Ticket_L != 0 && Ticket_L != -1 ))
    {     
      Exit_L = OrderClose(Ticket_L,Lots,Bid,Slip,Red);
      if( Exit_L ==1 ) {Ticket_L = 0;}
    }    

   //売りポジションのエグジット
   OS = OrderSelect(Ticket_S, SELECT_BY_TICKET);  
   if(    ((RSI_MAIN1 > RSI_Signal1 && RSI_MAIN2 <= RSI_Signal2)||( OrderOpenPrice() + lc * Point <= Close[1]))
       && ( Ticket_S != 0 && Ticket_S != -1 ))
    {     
      Exit_S = OrderClose(Ticket_S,Lots,Ask,Slip,Blue);
      if( Exit_S ==1 ) {Ticket_S = 0;} 
    }   

   //買いエントリー
   if(    RSI_MAIN1 > RSI_Signal1 && RSI_MAIN2 <= RSI_Signal2 && RSI_MAIN1 > BuyLevel
       && ( 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,Red);
    }

   //売りエントリー
   if(    RSI_MAIN1 < RSI_Signal1 && RSI_MAIN2 >= RSI_Signal2 && RSI_MAIN1 <= SellLevel
       && ( 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,Blue);     
    } 

   return(0);
  }

###

関連記事

【FX】Fintokei 速攻プロプランについて

またまたプロップファームの Fintokei の話ですが、現在チャレンジプランを再開したところです。

記事を読む

【FX】2本の CCI をフィルタに使う EA

Youtube を観ていると、1本の EMA と 2本の CCI を使うトレード方法を伝授している人

記事を読む

MTF-CCI インディケーター( yMTF_Forex_freedom_Bar )を使った FX手法

上の AUDJPY 15分足のチャートのサブウィンドウに表示しているのはマルチタイムフレーム

記事を読む

「日本高配当」ETF売却

昨日、2つの ETF を売却。 GX高配当30日株 (235A) IFBB日高配当5

記事を読む

[FX]「時の旅人」システム大改造

3/19 06:00:00 buy 1 eurgbp 0.72408 3

記事を読む

【FX】Fintokei 速攻プロプラン開始(2)

以前の記事「【FX】Fintokei 速攻プロプラン開始」の続きです。 一昨日から風邪気味で、

記事を読む

[FX]時間帯理論 米国時間の逆張りタイム

前回の記事「東大院生が考えたスマートフォンFX / 田畑 昇人 」で紹介した時間帯理論ですが、欧

記事を読む

NFJ-REIT(1343)という ETF

NFJ と続くのではなく、NF は Next Funds のことで、J は J-REIT のほうに含

記事を読む

【FX】リアル口座とデモ口座の同時進行

FX で自動売買プログラムを使う場合、いきなりリアル口座にて他人の勧める推奨設定で始める方がおられま

記事を読む

Tracers NASDAQ100ゴールドプラス

Tracers NASDAQ100ゴールドプラス は アモーヴァ・アセットマネージメント社の出してい

記事を読む

Message

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

【AI】Perplexityという検索特化の AI

Perplexity という検索特化の AI があります。 きち

ネクスト・ジェネレーションと世界のベスト 5月の配当

毎月配当の超高配当投資信託の「ネクスト・ジェネレーション」と「世界のベ

AIPI, CEPI, FEPI の利回りが過少評価されている件

ずっと前から AIPI, CEPI, FEPI などカバードコール商品

【FX】MetaTrader4 build 1470 の不具合

MetaTrader4 build 1470 の不具合については以前も

投資商品乗り換え完了

ようやく2月くらいから始めた 投資信託+日本株の入れ替えが完了しました

→もっと見る

  • アクセスカウンター
PAGE TOP ↑