*

移動平均線とVQインディケーターとの組み合わせで自動売買

公開日: : 最終更新日:2014/12/27 マネー

昨日のストラテジー(ロジック)をMetaTrader4 でプログラムしてみました

昨日のブログでは矢印を手で打っていましたが、今回は自動です。^^

ストラテジー(ロジック) も少し変更。

買いシグナル

  • 始値と終値がともに移動平均線(62EMA)より上に抜けた陽線が出現し、VQが上昇中であれば次の足で買い

売りシグナル

  • 始値と終値がともに移動平均線(62EMA)より下に抜けた陰線が出現し、VQが下降中になっていれば次の足で売り

決済シグナル

  • 買い(売り待ち)の場合はVQが下降し始めた場合
  • 売り(買い待ち)の場合はVQが上昇し始めた場合

まだ自動売買のファンクションを追加していませんので、きっちり計算できていませんが、20勝27敗で昨日は継続中だった最後の買いも大幅に勝ちでした。

昨日よりちょっとエントリのタイミングを遅らせた(「始値も 62EMAを突き抜ける」というブレイクアウトの要素を強めた)ので勝率は低くなりましたが、そもそもブレイクアウトのシステムは勝率は低いのが普通(その分プロフィットレシオが高いことを重視)なので、納得はできます。

それに昨日よりエントリ回数が無駄に増えた(勝率が低くなったのもこれが原因)のは VQ の定数を変更していないためです。外付けの VQ を借用したので、お気に入りの定数セット(6,3,4,2)が使えませんでした

いずれ VQ 部分も内部に取り込んで VQ の定数も実行時に変更できるようにしたいです。

しかし、それでも負けの金額はトータルでもわずかで、勝ちの金額は結構大きく、収益としてはこのままでも結構よいと思います。

ドル円 1時間足(本日まで)

↑ クリックすると拡大します

プログラム ソースコード

きれいに清書してありませんし、不要な変数(のちのち必要になるので残しています)も入っています。

 

//+------------------------------------------------------------------+
//|                                                     vq_0003.mq4 |
//+------------------------------------------------------------------+

#property copyright "Copyright 2014, teleradian"
#property link      "http://yiwasaki.com/wp/"
#property version   "1.001"
#property strict

#property indicator_chart_window
#property indicator_buffers 5
#property indicator_color1 Yellow
#property indicator_color2  0x4444ff
#property indicator_color3 White
#property indicator_color4 Yellow

double BufBuy[];
double BufSell[];
double BufClose[];
double Buf1[];
double Buf2[];

extern int MA_Period =62;

//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int init()
  {
//---

   IndicatorBuffers(4);

   SetIndexBuffer(0,BufBuy);
   SetIndexBuffer(1,BufSell);
   SetIndexBuffer(2,BufClose);
   SetIndexBuffer(3,Buf2); //62EMA
   SetIndexBuffer(4,Buf1); //VQ6

   SetIndexStyle(0, DRAW_ARROW);
   SetIndexArrow(0,233);
   SetIndexStyle(1, DRAW_ARROW);
   SetIndexArrow(1,234);
   SetIndexStyle(2, DRAW_ARROW);
   SetIndexArrow(2,73);

   SetIndexStyle(3, DRAW_LINE, STYLE_SOLID, 1, Yellow);
   SetIndexStyle(4, DRAW_LINE, STYLE_SOLID, 1, Black);

//---
   return(INIT_SUCCEEDED);
  }

//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//---

  }

//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
int start()
  {

   int kai = 0, uri =0;
   int counted_bar = IndicatorCounted();  
   int limit = Bars - counted_bar;
   if (limit == Bars) limit = limit-1 ;

   for (int i =limit -1; i>=0; i--)
   {
      Buf1[i] = EMPTY_VALUE;
      Buf1[i] = iCustom(NULL, 0, "vq", 6, i);
      Buf2[i] = iMA(NULL,0,MA_Period,0,MODE_EMA,PRICE_CLOSE,i);
   }

   for (int j =limit -1; j>=0; j--)
   {
      if (Buf1[j+1]==-1.0 && Buf1[j]>Buf1[j+1])
      {
         if (uri ==2) BufClose[j] = Low[j];
         kai = 1; uri = 0;
      }
      if (kai ==1 && Open[j+1]>Buf2[j+1] && Close[j+1]>Buf2[j+1] && Open[j+1]<Close[j+1])
      {
         BufBuy[j] = Low[j];
         kai = 2;
      }
      if (Buf1[j+1]==1.0 && Buf1[j]<Buf1[j+1])
      {
         if (kai ==2) BufClose[j] = High[j];
         kai = 0; uri = 1;
      }
      if (uri == 1 && Open[j+1]<Buf2[j+1] && Close[j+1]<Buf2[j+1] && Open[j+1]>Close[j+1]){
         BufSell[j] = High[j];
         uri = 2;
      }

   }

   return(0);
  }
//+------------------------------------------------------------------+

関連記事

移動平均線とVQインディケーターとの組み合わせで自動売買(2)

###

 

関連記事

アメリカ株投資 2021-6-8

以前の記事「アメリカ株投資 2021-5-31」で「純益(含み益)がはじめて 100万円を突

記事を読む

[FX] 久々の新作自動売買プログラム ys3MTFSto01a.ex4

何ヶ月かぶりに自動売買プログラムを作ってみました。 最近ようやく「魔の7、8月」が終わりかけな

記事を読む

【FX】定番のトレンドフォロー EA 10EMAタッチ法(2)

以前の記事「【FX】定番のトレンドフォロー EA 10EMAタッチ法」の続きです。 あちこちの

記事を読む

[FX] 来週は yasciiHA04c.ex4 を投入

来週稼働予定の EA をご紹介。 yasciiHA04b.ex4 を改良したものです。

記事を読む

[FX] タイムフィルタについてのまとめ

タイムフィルタ開発の経緯 タイムフィルタは私の造語です。 以前、時刻をトリガーにした「時の旅

記事を読む

農業としてのFX

以前の記事「FX はギャンブル」で、FX にはギャンブル要素があるという話をしましたが、FX には農

記事を読む

[FX] フィボナッチ・トレーリングストップ(初期型)

最近本業が忙しくて改良のネタをいろいろ思いつくのですが、なかなかプログラミングしてテストできませ

記事を読む

【FX】もう一つの Fintokei の使い方

Fintokei のチャレンジを実行中ですが、Fintokei にはチャレンジ(試験)の不要なもう一

記事を読む

簡単な平均足システム (2)

以前の記事「簡単な平均足システム」で作った簡単な平均足システムを改良してみました。 改良その1

記事を読む

FX トレード 2014/11/28-2014/12/1

この期間は MetaTrader4 で EA の検証を主にやっていました。 11/29,30

記事を読む

Message

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

【FX】CCI をエントリトリガに使ったEA を試作してみた(2)

前回の記事「【FX】CCI をエントリトリガに使ったEA を試作してみ

【FX】CCI をエントリトリガに使ったEA を試作してみた

CCI は Commodity Channel Index(商品チャネ

日本漢字全史 / 沖森卓也

★★★★☆ 日本における漢字の歴史について、これほどわかりや

【FX】ボリンジャーバンドをトリガーにするEA

以前にも 4つほど作りましたが、ボリンジャーさんの動画を久々に観たので

専門家の条件

単なる私見ですが、専門家というのは体系的な知識を有していることが必要条

→もっと見る

  • 2026年1月
     1234
    567891011
    12131415161718
    19202122232425
    262728293031  
  • アクセスカウンター
PAGE TOP ↑