超シンプルな自動売買プログラム(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);
}
###
関連記事
-
-
VQ を使ったシンプルな自動売買システム
VQ という摩訶不思議なインジケーターがあります。始値、終値、高値、安値のそれぞれの移動平均線を使っ
-
-
【FX】EA の運用
以前にも書いた内容ですが、よい事例が見つかったので、より具体的に述べてみようと思います。 この
-
-
ブランド品は買う価値はない(売る価値はあるけど)
以前にもいろいろ書いていますが、私はブランド物はまず買いません。 誰かがより高い値段で買い取っ
-
-
【FX】Fintokei に適する EA
Fintokei のように含み損を最重視する場で使用するのは、やはりナンピン系の EA は荷が重そう
-
-
[FX] 自動売買始めました (2)
前回の記事「 自動売買始めました」の続きです。 本日オフィスから帰宅すると、2回取引が済んでい
-
-
[FX] EA の使い方&デモ口座成績 2015/4/1-8
デモ口座近況 EA 日 売買時刻 取引 lots 通貨 売買値 決済
-
-
[FX]前週の平均値と順張り&逆張り EA化(2)
前回の記事は 2014/1/1 – 2014/12/31 での結果から作成しました。 私は実際
-
-
[FX] 2015/5/11-18 リアル口座結果
5/11 10:30:00 sell 0.1 eurusd-a01 1.11
-
-
【FX】VantageTrading という海外業者
わたしのようにスキャルピングやデイトレが主体のものにとっては、スプレッドが狭い業者を選ぶのは最も重要
-
-
本日アメリカの社債を売りました
本日アメリカの社債を全部売りました(先日は米国債を全部売りました)。 今月8日の利払日が過ぎた






