超シンプルな自動売買プログラム(13) 前週の平均値と順張り 時間特性
公開日:
:
最終更新日:2015/03/03
マネー
前回の記事「超シンプルな自動売買プログラム(12) 前週の平均値と逆張り 時間特性」ですが、どの通貨ペアもサーバー時間が 23 のときには半端ない損失が出るなァと思いましたので、順張りも試してみました。
一日のうち一番いい時間帯を選んで 1時間だけトレードするのは同じで、売るか買うかの条件を 「直前5日間の平均値より安く始まれば売り、直前5日間の平均値より高く始まれば買い」と順バリにしただけです。
サーバー時間はOANDAのもので、日本時間より 7時間遅い(冬時間)です。
このサーバー時間に売買して 1時間後に強制決済した結果です。
1時間足 2014/1/1 – 2015/1/1
| 通貨ペア | サーバー時間 | 損益(ドル) |
| EURUSD | 15 | 1139 |
| 23 | 2257 | |
| USDJPY | 5 | 1278 |
| 10 | 1308 | |
| 18 | 1372 | |
| 20 | 2674 | |
| 22 | 2027 | |
| EURJPY | 8 | 1177 |
| 9 | 1048 | |
| 13 | 1438 | |
| 17 | 2299 | |
| 23 | 1343 | |
| AUDUSD | 23 | 1138 |
| AUDJPY | 5 | 1605 |
| 10 | 2115 | |
| 23 | 1542 | |
| CADJPY | 5 | 1679 |
| 9 | 1299 | |
| 10 | 1884 | |
| 12 | 1335 | |
| 15 | 1426 | |
| 17 | 1584 | |
| 23 | 1325 | |
| EURAUD | 23 | 2583 |
| CHFJPY | 9 | 1159 |
| 13 | 1339 | |
| 17 | 2255 | |
| 23 | 1190 | |
| GBPJPY | 4 | 1121 |
| 9 | 1302 | |
| 10 | 3509 | |
| 15 | 4860 | |
| 17 | 1664 | |
| 23 | 2688 | |
| NZDJPY | 5 | 2260 |
| 10 | 1500 | |
| 12 | 1852 | |
| NZDUSD | 2 | 1002 |
| 5 | 1320 | |
| 23 | 1776 | |
| GBPUSD | 6 | 1397 |
| 14 | 2536 | |
| 23 | 2109 |
結果は年間で 1000ドル以上の利益のものだけに限定しました。
全部稼働させると、元金 10000ドルで、利益が 74714 ドルと 約 8.5倍になります。
逆張りバージョンと同時に動作させると、119688 ドルとなり、約 13倍ですね。
サーバー時間が 23-0 の間だけ合計 10.0 ロットになるので元金が少ない間はドローダウンが怖いです。ロット数を調整してください。
関連記事
プログラムソース(テスト用)
//
// yasciiDaily02.mq4 1時間足で動作 順張り
//マジックナンバーの定義
#define MAGIC 44602
//パラメーターの設定//
extern double Lots = 1.0; //取引ロット数
extern int Slip = 10; //許容スリッページ数
extern string Comments = "yasciiDaily02"; //コメント
//---- input parameters
extern int Fast_period = 5;
//変数の設定//
int Ticket_L = 0; //買い注文の結果をキャッチする変数
int Ticket_S = 0; //売り注文の結果をキャッチする変数
int Exit_L = 0; //買いポジションの決済注文の結果をキャッチする変数
int Exit_S = 0; //売りポジションの決済注文の結果をキャッチする変数
int OS1 ;
int OS2 ;
double OOPL;
double OOPS;
extern int intime = 3 ;
int outtime ;
//extern double ILC = 12.0 ;
int start()
{
if (Volume[0]>1 || IsTradeAllowed() == false) return(0) ;
if (intime ==23) outtime = 0;
else outtime = intime +1 ;
//買いポジションのエグジット
OS1 = OrderSelect(Ticket_L, SELECT_BY_TICKET);
OOPL = OrderOpenPrice();
if( Hour() == outtime
&& ( 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( Hour() == outtime
&& ( Ticket_S != 0 && Ticket_S != -1 ))
{
Exit_S = OrderClose(Ticket_S,Lots,Ask,Slip,Red);
if( Exit_S ==1 ) {Ticket_S = 0;}
}
//買いエントリー
if( Hour() == intime && iMA(NULL, 1440, Fast_period, 0, 0, PRICE_CLOSE, 1) < Open[0]
&& ( 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( Hour() == intime && iMA(NULL, 1440, Fast_period, 0, 0, PRICE_CLOSE, 1) > Open[0]
&& ( 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】TitanFX はデモ口座開設が簡単
TitanFX のブレード口座は最良というわけではありませんが、そこそこスプレッド&手数料が安く、ス
-
-
[FX] 自動売買始めました (2)
前回の記事「 自動売買始めました」の続きです。 本日オフィスから帰宅すると、2回取引が済んでい
-
-
[FX]フィボナッチをレンジ境界に使う自動売買プログラム
「フィボナッチをレンジ境界に使う自動売買プログラム」の意味がわからない? フィボナッチ・リトレ
-
-
[FX] 今週の戦略 2015/6/29-7/4
先週は FX の記事を書くのを忘れていましたが、本日朝は大きな窓開けがありました。 ギリシ
-
-
[FX] PLATINUM TURBO FX 入手
PLATINUM TURBO FX というスキャルピング用システムを入手しました。 M
-
-
ADXcrosses を EA に
前々回の記事「未来を予測する(?)便利なインジケータ AdamPriceReflection」の
-
-
【FX】2024年2月集計
現在運用中の FX口座の2024年2月中の運用成績です。 1336.63$+153568円(と
-
-
【FX】Silent Falcon という EA
本日見つけた FX 自動売買ソフト(EA)です。 私のいうバースト系(急激な価格変動をトリガー
-
-
【FX】もう一つの Fintokei の使い方
Fintokei のチャレンジを実行中ですが、Fintokei にはチャレンジ(試験)の不要なもう一






