[FX] 来週は yasciiHA04c.ex4 を投入
公開日:
:
最終更新日:2020/03/08
マネー
来週稼働予定の EA をご紹介。
yasciiHA04b.ex4 を改良したものです。
基本的にほとんどおなじですが、エントリ条件を少し緩めました。
一度トレードを降りてから仕切り直しが早くなる効果があると思います。
*
2015/3/15~2015/4/11 の 1ヶ月間の過去データで最適化したパラメーターは次のとおりです。
- 「総損益$」 は 2015/3/15~2015/4/11 での最適化後の最大利益(ドル)
- 「今週」はそのパラメーターを使った場合に 2015/4/6~2015/4/11 稼働させていたときの想定利益です(ドル)
- ロットは 0.1(1万通貨)になります
- 使用時間足はすべて 1時間足になります
推奨パラメーター(2015/4/12-18用)
| 通貨 | in_time | out_time | FP | ILC | 総損益$ | 今週 |
| EURUSD | 10 | 22 | 11 | 30 | 503 | 125 |
| AUDUSD | 7 | 19 | 12 | 14 | 491 | 122 |
| USDCHF | 10 | 19 | 7 | 41 | 846 | 208 |
| GBPUSD | 7 | 20 | 13 | 34 | 854 | 260 |
| GBPJPY | 8 | 15 | 12 | 19 | 310 | 339 |
このパラメーターで来週は稼働させてみます。
なんとか 1000ドルオーバーを目指したいですね。
GBPJPY は今週の成績がよかっただけで来週もくるとは限りませんが。
プログラムソース yasciiHA04c.ex4
//
// yasciiHA04c.mq4
// Heiken_Ashi_Real(移動平均線クロス)を使用
// 通常平均足との組み合わせ
// with Time Filter
// 暴落対策変更
//マジックナンバーの定義
#define MAGIC 42221
//パラメーターの設定//
extern double Lots = 0.1; //取引ロット数
extern int Slip = 10; //許容スリッページ数
extern string Comments = "HA04c"; //コメント
extern int Fast_period = 12 ;
extern double ILC = 35.0 ;
extern int in_time = 10; // 取引開始時間
extern int out_time = 17; // 取引停止時間
int Tenkan_sen=9;
int Kijun_sen=26;
double Senkou_span_b=52;
//変数の設定//
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 ;
//暴落対策(始め)
double FastHH1 = Close[iHighest(NULL, 0, MODE_CLOSE, Fast_period, 1)];
double FastLL1 = Close[iLowest(NULL, 0, MODE_CLOSE, Fast_period, 1)];
//買いポジションのエグジット
OS1 = OrderSelect(Ticket_L, SELECT_BY_TICKET);
OOPL = OrderOpenPrice();
if( (Bid < FastLL1 || ( OOPL - lc*Point >= Bid ))
&& ( 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( (Ask > FastHH1 || ( OOPS + lc*Point <= Ask ))
&& ( Ticket_S != 0 && Ticket_S != -1 ))
{
Exit_S = OrderClose(Ticket_S,Lots,Ask,Slip,Blue);
if( Exit_S ==1 ) {Ticket_S = 0;}
}
//暴落対策(終わり)
if (Volume[0]>1 || IsTradeAllowed() == false) return(0) ;
double HA_open1 = ( Open[2] + Close[2] ) / 2.0 ;
double HA_close1 = ( Open[1] + Close[1] + High[1] + Low[1] ) / 4.0 ;
double HA_open2 = ( Open[3] + Close[3] ) / 2.0 ;
double HA_close2 = ( Open[2] + Close[2] + High[2] + Low[2] ) / 4.0 ;
double HA_openMA1 = iCustom(NULL,0,"Downloads\\Heiken_Ashi_Real",2,1);
double HA_openMA2 = iCustom(NULL,0,"Downloads\\Heiken_Ashi_Real",2,2);
double HA_closeMA1 = iCustom(NULL,0,"Downloads\\Heiken_Ashi_Real",3,1);
double HA_closeMA2 = iCustom(NULL,0,"Downloads\\Heiken_Ashi_Real",3,2);
double cla1 = iIchimoku( NULL, 0, Tenkan_sen, Kijun_sen, Senkou_span_b, 3, Kijun_sen);
double clb1 = iIchimoku( NULL, 0, Tenkan_sen, Kijun_sen, Senkou_span_b, 4, Kijun_sen);
//買いポジションのエグジット
OS1 = OrderSelect(Ticket_L, SELECT_BY_TICKET);
OOPL = OrderOpenPrice();
if( ((HA_openMA1 > HA_closeMA1 && HA_openMA2 > HA_closeMA2) || ( HA_open1 > HA_close1 && HA_open2 > HA_close2) ||( 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( ((HA_openMA1 < HA_closeMA1 && HA_openMA2 < HA_closeMA2) || ( HA_open1 < HA_close1 && HA_open2 < HA_close2)||( OOPS + lc*Point <= Close[1] ) )
&& ( Ticket_S != 0 && Ticket_S != -1 ))
{
Exit_S = OrderClose(Ticket_S,Lots,Ask,Slip,Aqua);
if( Exit_S ==1 ) {Ticket_S = 0;}
}
//買いエントリー
if( HA_openMA1 < HA_closeMA1 && HA_open1 < HA_close1
&& (Hour() >= in_time && Hour() <= out_time)
&& ((Close[1] > cla1 && Close[1] > clb1) || (Close[1] < cla1 && Close[1] < clb1))
&& ( 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( HA_openMA1 > HA_closeMA1 && HA_open1 > HA_close1
&& (Hour() >= in_time && Hour() <= out_time)
&& ((Close[1] > cla1 && Close[1] > clb1) || (Close[1] < cla1 && Close[1] < clb1))
&& ( 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,Aqua);
}
return(0);
}
###
関連記事
-
-
【FX】なかなかすごいブレイクアウト Inquisition Breakout EA(3)
「【FX】なかなかすごいブレイクアウト Inquisition Breakout EA(2)」の続き
-
-
【FX】ForexTrend というインジケーター
ForexTrend というインジケーターがなかなか不思議なので、調べてみました。 実行ファイ
-
-
[FX]yasciiHA04a パラメーター変更
以前の記事「yasciiHA04a 実戦投入」の続きです。先週金曜日は指標発表のため EA は止
-
-
【楽天でコインを買う】記念硬貨・旧硬貨 49枚セット 8605円分
ヤフオクでなく、楽天市場の堀田商事さんから購入。 額面でなく、時価で 8605円分とい
-
-
【FX】Benefit 4.1 という EA
Benefit 4.1 という EA を 6/17 よりデモ口座でフォワードテスト中です。
-
-
Schaff Trend Cycle について
Schaff Trend Cycle は私の好きな指標の一つで、MACD のストキャスをストキャ
-
-
[FX] Rose Pound という自動売買ソフト
昨日の記事「 2021年6月第3週の成績」で紹介した市販の自動売買プログラムのうち、ポンド円を扱った
-
-
【FX】TitanFX はデモ口座開設が簡単
TitanFX のブレード口座は最良というわけではありませんが、そこそこスプレッド&手数料が安く、ス






