*

[FX] たった1本の移動平均線でスイングトレード

公開日: : マネー

できるだけ物事は簡単なほうがいいと思っている人が多いでしょうが、私もその末席におります。

一番簡単なシステムは移動平均線と価格のクロスを利用したものでないかと思っていましたが、昨日天啓のヒラメキが。

1本の移動平均線でクロスを使わずに!

  1. キモは線形加重平均線を使うこと
  2. その傾きでトレンド転換を知ること
  3. 少なくとも日足を見ておけば逆走してもロスはたいしたことはないのではないか
  4. うまくいけば第一波の最初から乗れるのでは?

ということでテスト用のプログラムを作りました。

2011/1/1-2011/6/6 ドル円 4時間足 1万通貨

4時間足なので回数が極端に少なく、13回。週に1回あるかないかくらいの起動で、最長で16日間ほど保有しています。

まさにスイングトレード。

純益 620.45ドル、プロフィットファクター 8.98、勝率69.23%(9勝4敗)、最大ドローダウン 0.86%(8.6% / lot)となりました。

日足でトレンドを確認して4時間足のトレンドに乗るというわけです。

実際のスイングトレーダーでも週足、日足と4時間足しか見ないという人もいますので、それをプログラムが自動でやってくれる感じですね。

あとは安全機能をつけたら実稼働しましょうか。

プログラムソース(テスト版)

//
// ysLWMAMTF01b.mq4
//
// 1時間足、4時間足 スイングトレード
// エントリ:線形荷重移動平均線の向きが変わると
// フィルタ:タイムフィルタ 日足
// イクシット:向きの反転

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

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

int MA_Period = 20 ;

extern int in_time = 15; // 取引開始時間(0以上)
extern int out_time = 16; // 取引停止時間(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(){

if (Volume[0]>1 || IsTradeAllowed() == false) return(0) ;

double ma1 = iMA(NULL, 0, 20, 0, MODE_LWMA, PRICE_CLOSE, 1);
double ma1p = iMA(NULL, 0, 20, 0, MODE_LWMA, PRICE_CLOSE, 2) ;
double ma1pp = iMA(NULL, 0, 20, 0, MODE_LWMA, PRICE_CLOSE, 3) ;

int BS_signal = 0;
if( ma1 > ma1p && ma1p < ma1pp ) BS_signal = 1 ;
if( ma1 < ma1p && ma1p > ma1pp ) BS_signal = -1 ;

//買いポジションのエグジット
OS1 = OrderSelect(Ticket_L, SELECT_BY_TICKET);
OOPL = OrderOpenPrice();

if( ma1 < ma1p && ( 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( ma1 > ma1p && ( Ticket_S != 0 && Ticket_S != -1 ))
{
Exit_S = OrderClose(Ticket_S,Lots,Ask,Slip,Blue);
if( Exit_S ==1 ) {Ticket_S = 0;}
}

//買いエントリー
if( BS_signal == 1 && iClose(NULL,1440,1) > iOpen(NULL,1440,1) // trendy == 1
&& (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( BS_signal == -1 && iClose(NULL,1440,1) < iOpen(NULL,1440,1) //trendy == -1 && (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);

}

 

###

関連記事

【FX】新しい FX自動売買プログラム作成(2) 朝スキャから昼スキャへ

「【FX】新しい FX自動売買プログラム(朝スキャ)作成」の続きです。 つくった朝スキャのプロ

記事を読む

【FX】ほぼストキャス単独での EA

ストキャスティクスという指標があります。 売買サインが早く出るのでスキャルピング愛好家には好評

記事を読む

【FX】 TitanFX ブレード口座が不調

TitanFX のブレード口座は今回のプロジェクトで私が最初に開設して、いろんな EA を今年 8月

記事を読む

【FX】NY Close Scalper V2.6 という EA

ニューヨーク終了時間 とは夏でニューヨーク時間 16:00 ~ 18:00 のことで、日本時間では

記事を読む

マーフィーのスパンモデルについて

マーフィーの最強スパンモデルFX投資法 柾木 利彦 日本実業出版社 2010

記事を読む

【FX】ThreeTrader の Rawゼロ口座は最強

以前の記事「ThreeTrader で新たなタイプの口座を開いてみる」で述べた海外FX業者の Thr

記事を読む

アンディさんのリアルタイム雲

  上が一目均衡表で、雲は26本先行しています。 下は有名なト

記事を読む

トランプショック

最近、トランプ大統領の関税引上げが 株式、為替、債権の相場にショックを与えていますね。 私は直

記事を読む

アメリカ長期債券ETF への移行(まだ先は長い)

この前、ナマの債券(個別の債券)を全部売却した話をしました。 債券を全部売却(売却益ありま

記事を読む

ふるさと納税3回め / イチゴ 玄海町

以前の記事「ふるさと納税2回め / 液晶ディスプレィ XU2390HS-B1」でズにのった私は続

記事を読む

Message

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

Windows11 どエラいエラー発覚

https://www.youtube.com/watch?v=7Tp

[FX] 新たな Tokyo Boxプログラム(2)

先日作製した Tokyo Boxプログラムは、少しずつ改良を加えていま

【FX】トレンドフォローの利確にシャンデリア エグジット

トレンドフォローの自動売買プログラム(EA)で、いつも困るのが利益確定

【FX】London Box というプログラム

昨日作った Tokyo Box は東京時間でできたボックスの高値、低値

[FX] 新たな Tokyo Boxプログラム

Tokyo Box(別名多数あり) シリーズは、 値動きの少

→もっと見る

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