ガチ速FX / 及川圭哉 (2)
ぱる出版
売り上げランキング: 176
★★★☆☆
前回の記事「ガチ速FX / 及川圭哉」で紹介した本ですが、その中に書いてあった鉄板手法の一つを自動運転プログラムにしてみました。
5分足チャートで動作させるのですが、5分足の3本の単純移動平均線SMA(5本、14本、20本)が離れて上を向いており、75本線SMA も上向きの状態で、ローソク足が 15分足SMA(10本)に上から近づいてタッチして反転して上に抜けたらエントリ。
利益確定は本ではあまり明確に規定してありませんが、このプログラムではそのうちの一つの方法である 5分足の 5本SMAを割り込んだときをイクシットとしてみます。
要は上向きトレンドの押し目のごく初期を狙うオーソドックスな方法です。
下向きトレンドの場合は売りの場面となり、上記の話はすべて逆(上⇒下、買い⇒売り)になります。
きちんと検証できていませんが、簡易版(5分足が確定するごとに判定;本では tick 毎で判定するのが異なる)のためかあまりいい結果が出ません。
もう少し原法に近づけたバージョンを作って再検証するつもりですが、手法的には当たり前でごくまとも(エントリが少し早すぎるという人も多いかもしれませんが)なので、もっといい結果が出るのではと思います。
*
本にはない私なりの改良点はタイムフィルタを加えていることで、24時間、東京時間、ロンドン時間、NY時間など好きな時間帯を切り取って検証&実行できることです。
「都合の悪い時間帯はないかバックテストで調べ、あればその時間帯でのエントリを防ぐ」ための機能ですね。
サーバー時間が NYセットになっている場合は「in_time =0、out_time =23」 と設定すると 24時間営業となります。
東京時間なら「in_time =3、out_time =11」で、out_time を 9 や 10 にすることもよくあります。
ロンドン時間や NY時間は始まりと終わりが季節によって異なりますし、もともと始まりと終わりの時間がはっきりしていないので、そのへんはご自分で判断ください。
プログラムソース
//
// ysTouch01a.mq4
//
// 2019.9.18 5分足「スケベタッチ」
// エントリ: 15分sma10 にタッチ
// イグジット: sma5にタッチ
// フィルタ: 5分移動平均線の傾きが正か負か//マジックナンバーの定義
#define MAGIC 42311//パラメーターの設定//
extern double Lots = 0.1; //取引ロット数(0.1 は1万通貨)
extern int Slip = 10; //許容スリッページ数
extern string Comments = “”; //コメントextern double ILC = 40 ;
// extern double TP = 1100 ;//extern int SMA_Period1 = 20; //移動平均線の傾き
extern int in_time = 3; // 開始時間(サーバー時間 0から)
extern int out_time = 20; // 終了時間(サーバー時間 24まで)//変数の設定//
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(){
double lc = ILC;
if(( Digits ==3 ) ||(Digits ==5)) lc = lc*10.0 ;if (Volume[0]>1 || IsTradeAllowed() == false) return(0) ;
double ma1 = iMA(NULL,0,5,0,MODE_SMA,PRICE_CLOSE,1);
double ma2 = iMA(NULL,0,14,0,MODE_SMA,PRICE_CLOSE,1);
double ma3 = iMA(NULL,0,20,0,MODE_SMA,PRICE_CLOSE,1);double ma15 = iMA(NULL,15,10,0,MODE_SMA,PRICE_CLOSE,1);
double ma4a = iMA(NULL,0,75,0,MODE_SMA,PRICE_CLOSE,1);
double ma4b = iMA(NULL,0,75,0,MODE_SMA,PRICE_CLOSE,2);//買いポジションのエグジット
OS1 = OrderSelect(Ticket_L, SELECT_BY_TICKET);
OOPL = OrderOpenPrice();if( (( Close[1] < ma1) || ( OOPL – 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;}
}//売りポジションのエグジット
OS2 = OrderSelect(Ticket_S, SELECT_BY_TICKET);
OOPS = OrderOpenPrice();if( (( Close[1] > ma1)||( OOPS + 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( Low[1] < ma15 && Close[1] > ma15
&& ma1 > ma2
&& ma2 > ma3
&& Close[1] > ma3
&& ma4a > ma4b
&& Hour() >= in_time && Hour() < out_time
&& ( 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( Low[1] > ma15 && Close[1] < ma15
&& ma1 < ma2
&& ma2 < ma3
&& Close[1] < ma3
&& ma4a < ma4b
&& Hour() >= in_time && Hour() < out_time
&& ( 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);
}
関連記事
-
心にエンジンがかかる50の小さな習慣 / 中谷 彰宏
心にエンジンがかかる50の小さな習慣 心にエンジンがかかる50の小さな習慣 中
-
クラシックCDガイド ― 現代の名演奏を聴く / 石原 俊
クラシックCDガイド―現代の名演奏を聴く (岩波アクティブ新書) 石原 俊 岩波
-
安心の財産形成術 / 山崎 隆
安心の財産形成術 山崎 隆 ファーストプレス 2012-05-18 売り上げラ
-
本番力を高める57の方法 / 中谷彰宏
本番力を高める57の方法 中谷 彰宏 ダイヤモンド社 2005-02-03 売り
-
「年100回配当」投資術 / マーク・リクテンフェルド(3)
★★★★☆ 以前の記事「「年100回配当」投資術 / マーク・リクテンフェルド(2)」の続
-
裏から読むと面白い! 大人の世界史 / 歴史の謎研究会
裏から読むと面白い! 大人の世界史 歴史の謎研究会 青春出版社 2007-10-
-
三国志孔明死せず / 伴野 朗
孔明死せず 孔明死せず 三国志 (集英社文庫) 伴野 朗 集英社 1996
-
語られざる中国の結末 (PHP新書) / 宮家邦彦
語られざる中国の結末 (PHP新書) 宮家邦彦 PHP研究所 2013-10-1
-
あなたのお客さんになりたい!―マンガ顧客満足入門 / 中谷 彰宏
あなたのお客さんになりたい!―マンガ顧客満足入門 中谷 彰宏 至高 道紀 三笠
-
最短で一流のビジネスマンになる!ドラッカー思考 / 一条真也
最短で一流のビジネスマンになる!ドラッカー思考~一流の思考を身につける!47の実
- PREV
- ガチ速FX / 及川圭哉
- NEXT
- ディナポリ手法で利用するDMA