*

FXブレイクアウトシステムのテスト

公開日: : 最終更新日:2015/01/12 マネー

ブレイクアウトシステムは今まで食わず嫌いでしたが、試作してみました。

ルールはシンプル。

  • 直近39期間の最高値を終値が上回る(ブレイクアウト)と買い。
  • 直近39期間の最低値を終値が下回る(ブレイクアウト)と売り。
  • 買いの決済は、直近19期間の最低値を終値が下回るとき。
  • 売りの決済は、直近19期間の最高値を終値が上回るとき。

プログラムソースは後述。

検証期間は 2013/3/15 から先週まで。

下は USDJPY 1時間足の結果です。Fast_period = 15 ; Slow_period = 30 に最適化しています。

 

プロフィットファクターは 1.30 ですが、勝率 38.5%とがブレイクアウトシステムにしては高いのは円安相場が長く続いた影響でしょうか。

ちょっと改良の余地がありそうです。

プログラムソース

//
// yasciiBreakout01.mq4
//
//

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

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

extern int Fast_period = 18 ;
extern int Slow_period = 39 ;

//変数の設定//
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 FastHH2 = Close[iHighest(NULL, 0, MODE_CLOSE, Fast_period, 2)];
   double FastLL2 = Close[iLowest(NULL, 0, MODE_CLOSE, Fast_period, 2)];
   double SlowHH2 = Close[iHighest(NULL, 0, MODE_CLOSE, Slow_period, 2)];
   double SlowLL2 = Close[iLowest(NULL, 0, MODE_CLOSE, Slow_period, 2)];

   OS1 = OrderSelect(Ticket_L, SELECT_BY_TICKET);  
   OOPL = OrderOpenPrice();   

   //買いポジションのエグジット
   if(  (Close[2] >=FastLL2 && Close[1] < FastLL2) // || ( OOPL - ILC*Point >= Close[1] ))  //|| ( OOPL+TP*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;}
    }    

   OS2 = OrderSelect(Ticket_S, SELECT_BY_TICKET); 
   OOPS = OrderOpenPrice();

   //売りポジションのエグジット
   if(    (Close[2] <=FastHH2 && Close[1] > FastHH2) // ||( OOPS + ILC*Point <= Close[1] ))  //|| ( OrderOpenPrice()-TP*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(    Close[2] <= SlowHH2 && Close[1] > SlowHH2
       && ( 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,Yellow);
    }

   //売りエントリー
   if(    Close[2] >= SlowLL2 && Close[1] < SlowLL2
       && ( 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ブレイクアウトシステムのテスト(2)

###

関連記事

超シンプルな自動売買プログラム(13) 前週の平均値と順張り 時間特性

前回の記事「超シンプルな自動売買プログラム(12) 前週の平均値と逆張り 時間特性」ですが、どの

記事を読む

2865,2866,2868 の話

「2865,2866,2868 の話」とはなにか。 2865 は GXNDXカバコ

記事を読む

幸せな経済自由人の金銭哲学 マネー編 / 本田健(2)

幸せな経済自由人の金銭哲学 マネー編 (ゴマ文庫)本田 健 ゴマブックス 200

記事を読む

無料の自動売買プログラムの宝庫 AndreaForex

本日 AndreaForex というサイトから無料の自動売買プログラムを 236個、インジケーターを

記事を読む

2024年8月6日 日本株反騰

昨日の「2024年8月5日日本株大暴落」の続きです。 下は本日夕方の日経平均の日足チャートです

記事を読む

私の投資信託の買い方(2)

本日も米国株、投資信託ともに爆上げのようで、純益 166万円を記録。 本来は投資信託の

記事を読む

[FX] ボリンジャーバンド順張りシンプル版

昨日読んだ本「FX ボリンジャーバンド常勝のワザ / 山中康司」に触発されて、もっともシンプルなボリ

記事を読む

[FX] THV Trend のロジック

メタトレーダー4 の裁量トレード用テンプレートで有名な THV V3 のインジケーターのうち、THV

記事を読む

FX Works 2019年人気ナンバーワンの手法

FX Works という FX の手法を集めたサイトがあります。 そこでの 2019年人気ナン

記事を読む

[FX] 15分足スキャルピング自動運転プログラム

最近は FX関係のブログをいろいろ読んでいます。 「MT5・MT4を使ってFX」というサイトで

記事を読む

Message

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

AI で note に投稿することが流行っているそうな

AI で note に投稿することが流行っているそうな。 not

GS 日本株・プラス(通貨分散コース)の今月の配当

日本の投資信託の GS 日本株・プラス(通貨分散コース)の今月の配当が

知識は体系的に学ばないと身につかない

知識は体系的に 知識は体系的に学ばないと身につかないものです。 断

医者になって42年

42年前(1984年)には、以下のような出来事がありました。

Claude 使ってみる

Claude についていろいろ調べてみていたわけですが、いよいよ使って

→もっと見る

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