移動平均線とVQインディケーターとの組み合わせで自動売買
公開日:
:
最終更新日:2014/12/27
マネー
昨日のストラテジー(ロジック)をMetaTrader4 でプログラムしてみました。
昨日のブログでは矢印を手で打っていましたが、今回は自動です。^^
ストラテジー(ロジック) も少し変更。
買いシグナル
- 始値と終値がともに移動平均線(62EMA)より上に抜けた陽線が出現し、VQが上昇中であれば次の足で買い
売りシグナル
- 始値と終値がともに移動平均線(62EMA)より下に抜けた陰線が出現し、VQが下降中になっていれば次の足で売り
決済シグナル
- 買い(売り待ち)の場合はVQが下降し始めた場合
- 売り(買い待ち)の場合はVQが上昇し始めた場合
まだ自動売買のファンクションを追加していませんので、きっちり計算できていませんが、20勝27敗で昨日は継続中だった最後の買いも大幅に勝ちでした。
昨日よりちょっとエントリのタイミングを遅らせた(「始値も 62EMAを突き抜ける」というブレイクアウトの要素を強めた)ので勝率は低くなりましたが、そもそもブレイクアウトのシステムは勝率は低いのが普通(その分プロフィットレシオが高いことを重視)なので、納得はできます。
それに昨日よりエントリ回数が無駄に増えた(勝率が低くなったのもこれが原因)のは VQ の定数を変更していないためです。外付けの VQ を借用したので、お気に入りの定数セット(6,3,4,2)が使えませんでした。
いずれ VQ 部分も内部に取り込んで VQ の定数も実行時に変更できるようにしたいです。
しかし、それでも負けの金額はトータルでもわずかで、勝ちの金額は結構大きく、収益としてはこのままでも結構よいと思います。
↑ クリックすると拡大します
プログラム ソースコード
きれいに清書してありませんし、不要な変数(のちのち必要になるので残しています)も入っています。
//+------------------------------------------------------------------+
//| 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)
###
関連記事
-
-
[FX] 2015/4/13 EA 緊急停止 トレンドが消失(2)
以前の記事「2015/4/13 EA 緊急停止 トレンドが消失」でも書きましたが、GBPUSD
-
-
【FX】アンディさんのリアルタイム雲 (3)
最強の「FX理論」を君たちに教えたい posted with amazlet
-
-
iFreeNEXT NASDAQ次世代50 始めました
本日、「iFreeNEXT NASDAQ次世代50」というファンドを 20000円分買ってみました。
-
-
[FX]前週の平均値と順張り&逆張り EA化(7) サマータイム
以前の記事「前週の平均値と順張り&逆張り EA化(4) GBPJPY版のみ始動 」で、ぼちぼちリ
-
-
ガチ速FX / 及川圭哉 (2)
ガチ速FX 27分で256万を稼いだ“鬼デイトレ” posted with a
-
-
[FX] VQ_MTF システムにフィボナッチ・トレーリングストップを導入(2)
マルチタイムフレーム化した VQ システムである yasciiVQ_MTF01 にフィボナッチ・
-
-
【FX】ボリンジャーバンド順張りの EA(改良)
ボリンジャーバンドは順張りで使えと、ボリンジャーさんは草葉の陰で唱えています。あ、まだ存命中でしたか
-
-
【FX】高頻度トレーダー(HFT)タイプの EA の評価方法(2)
以前の記事「【FX】高頻度トレーダー(HFT)タイプの EA の評価方法」の続きです。 そこでは高
- PREV
- 年末FXトレーディング
- NEXT
- FX先生 / 杉田 勝







