コーディングの方法は? - ページ 184

 

EAにインジケータを作るのを助ける

私が見つけた素晴らしい戦略 多くのピップが待っている

こんにちは、私はすべての通貨の戦略を発見し、私は私のためにEAを作る必要がありますこれをチェックアウト...

1 MA_Period= 2 MA_shift= -5 MA_Method= 3 (YELLOW)

2 MA設定 MA_Period= 4 MA_shift= -5 MA_Method= 3 (RED)

3 MA設定 MA_Period= 200 MA_shift= 0 MA_Method= 0 (COLOUR TEAL)

シグナルショート:黄色と赤がティールを上下に交差したとき

を作るためにいくつかのEAを行うことができますそれが動作し、価格が10ピップに移動したときにEAは自分自身を修正することができます損失は、最高のプログラマーを待って2ピップに移動します...ない。

 
 

モニター価格のプログラミングについて

こんにちは、私はMT4のプログラミングについて質問があります、どのように私は価格を監視するEAを作ることができるでしょうか?私のEAコードをここに同封しました。 、ご協力ありがとうございました。

//+------------------------------------------------------------------+

//|オートピップフォリア.mq4||。

|| Copyright ?2009, MetaQuotes Software Corp.

//|Forexトレーディングソフトウェア。フォレックス・トレーディング・プラットフォーム MetaTrader 4

//+------------------------------------------------------------------+

extern double AnchorSpace = 0.0017;

extern double GridSpace = 0.0017;

extern double AnchorLot = 0.03;

extern double Level1 = 0.06。

extern double Level2 = 0.11;

extern double Level3 = 0.11。

extern double Level4Up = 0.11。

extern int MagicNumber = 1001;

extern double Profit_Target=0;

double SendCount=0;

int start()

{

int divider=(アスク-ビッド)/2;

ダブルMidPrice=Ask-divider;

double Buy=MidPrice+AnchorSpace;

SendOrders(Buy);

MonitorProfit();

return(0);

}

//+------------------------------------------------------------------+

//+------------------------------------------------------------------+

void SendOrders(double Buy)

{

if(SendCount<3){。

OrderSend(Symbol(),OP_BUYSTOP,AnchorLot,Buy,0,0,0, "MagicNumber",MagicNumber,0,Green) を送信します。

Buy=Buy+GridSpace;

OrderSend(Symbol(),OP_BUYSTOP,Level1,Buy,0,0,0, "MagicNumber",MagicNumber,0,Green);

Buy=Buy+GridSpace;

OrderSend(Symbol(),OP_BUYSTOP,Level2,Buy,0,0,0, "MagicNumber",MagicNumber,0,Green); Buy=Buy+GridSpace;

SendCount=3;

}

else if (SendCount==3)

{

return();

}

}

//+------------------------------------------------------------------+

void MonitorProfit()

{

// double Percent=Profit_Percentage/100;

int total = OrdersTotal();

double MyCurrentProfit=0;

for (int cnt = 0 ; cnt < total ; cnt++)

{

OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);

if (OrderMagicNumber() == MagicNumber)

MyCurrentProfit += OrderProfit()。

}

if (MyCurrentProfit>= Profit_Target){。

for(int i=total-1;i>=0;i--)

{

オーダーセレクト(i, SELECT_BY_POS);

if (OrderMagicNumber() == MagicNumber)

{

OrderClose( OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(),()), 5, Red ).OrderDelete( OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(),()), 5, Red );

OrderDelete( OrderTicket() );

}

}

}

else()

{

return();

}

}

//ここにプログラミングが必要な部分があります。

//+------------------------------------------------------------------+

void MonitorPrice()

{

if(Buy-Ask<=20 Point || Bid-Sell<=20 Point)

{

 

TENDAYHK-さんへ

あなたのQは完全に明確ではありませんが、'20 Point'は'20*Point'と読むべきです。

ビッグベー

 

キミト2へ

それはできると思いますし、自分でもできると思います。 ほとんどのタスクは、私自身の長いEAですでに持っています。 自分の時間を大切にしたいので、安くはないでしょう。

ビッグベ

 

サイクルを使ったトレードをするには?

ハイ

私はEAを持っており、私はそれがサイクルで動作するようにしたいと思います。

私は5つの変数を持っています

double ma1 = iMA(NULL, 0, 1, 0, MODE_EMA, PRICE_CLOSE, Current + 0);

double sar = iSAR(NULL, 0, 0.02, 0.2, Current + 0);

double Macd=iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_MAIN,Current + 0); double Signal=iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_MAIN,Current + 0);

double Signal=iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_SIGNAL,Current + 0); double Macd=iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_SIGNAL,Current + 0);

string var_trading="ok";

トレードの条件は以下の通りです。

******************************

if (期間()==1)

{

double ma_buy = ma1>sar && Macd>Signal && var_trading=="ok" ;

}

******************************

そして、これは私が欲しいものです。

1/取引開始

2/var_tradingの値が "no "になったとき --> var_trading="no"

3/取引終了(Takeprofitまたはstoploss)

4/var_trading="no "のため、新しいトレードを開始することができる。

5/ 重要:ma1がvar_trading="ok "の時

6/ when ma1 > sar again and if Macd>Signal ====> a new trade beginning!

7/ そして、var_trading の値が "no" になったとき --> var_trading="no"

8/ etc....

*******************************

どうすればいいのでしょうか?

多くの理由から、私はこれを望んでいない(私のコードを参照してください)。

double ma_buy = ma1p1sar && Macd>Signal && var_trading=="ok" ;

よろしくお願いします。

ファイル:
thl.mq4  22 kb
 

プログラマー pls help me on this

インジケータをEAに変換しようとしています。インジケータはバーを数えるために "int counted_bars = IndicatorCounted() "を使用していますが、EAで私はそれがインジケータに関連しているので、私はこれを使用することはできませんと思います。

どうすればこの問題を解決できるでしょうか。

ご教授お願いします。

ありがとうございます。

 

EAでインジケータを使用したい場合、iCustom関数を 使用するのが最も簡単で良い方法です。その使い方については、ヘルプをご覧ください。

幸運を祈ります。

ラックス

 

@luxinterior さん、ご返信ありがとうございます。

 

このようなエラーが表示されるのですが、どういう意味でしょうか?

2009.06.16 08:23:11 TestGenerator: unmatched data error (volume limit 66 at 2009.06.15 20:45 exceeded).