mql4アドバイザーを無料で書かせていただきます。 - ページ 7

 
こんにちは、アイデアがあります、ここで話すか、直接話すか、どうするか教えてください。
 
こんにちは、私のEAを改良するのを手伝ってくれませんか?
 
Andrey Luxe:

この分野の経験を積むために、あなたの面白いアイデアや戦略を参考に、25のEAを無料で書きます。

残り19個のEA

私はこのような問題を抱えています。すでにEAを持っていて、それは問題なく動作しますが、問題はトレーリングストップのブロックです。なぜか動作せず、取引しても開きません。以下は、EA本体です。トレーリングストップの何が問題なのか、お分かりになりますか?これがないと、どうしたらいいのかわからない。

石目-MACD.mq4|株式会社ゆめかな

| TO

//| http://www.forex-tradexperts-to.narod.ru |

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

#property copyright"TO"

#プロパティリンク "http://www.forex-tradexperts-to.narod.ru"

#include <WinUser32.mqh>.


extern string Parameters=" Ichimoku";

EXTERN INTERNATIONAL TENKAN_SEN=3;

EXTERN INTERNATIONAL KIJUN_SEN=48;

EXTERN INTERNATIONAL SENKOU_SPAN_B=52;

extern string Parameters="移動平均";

extern int maPeriod=4;

extern int ma_method=1;

extern int applied_price=3;

extern string Parameters=" MACD"。

extern int FastEMA=22;

extern int SlowEMA=52;

extern int SignalEMA=9;

extern string Parameters=" EA"。

extern int TP=200;

extern int SL=500;

extern int slippage=3;

extern double lot=0.1;

extern bool Add1/*(TENKANSEN resp. KIJUNSEN)*/ =true;

extern bool Add2/*(TENKANSEN revised Ma)*/=true;

extern bool trailing=true;

extern double trailingStop=200;

extern int zashita=1;


bool buy1=false,buy2=false,buy3=false,buy4=false;

bool sell1=false,sell2=false,sell3=false,sell4=false,sell22=false; buy22=false;

int ticket=0;

int i;

datetime t1=0,t2=1,t3=1,t4=1,t5=1,t7=1,t8=1;

int init()

{

return(0)です。

}

int deinit()

{

return(0)です。

}


int start()

{

t1=Time[0]です。


double MACDRED1=iMACD(NULL,0,FastEMA,SlowEMA,SignalEMA,PRICE_CLOSE,MODE_MAIN,1);

double MACDRED2=iMACD(NULL,0,FastEMA,SlowEMA,SignalEMA,PRICE_CLOSE,MODE_MAIN,2);

double MACDBLUE1=iMACD(NULL,0,FastEMA,SlowEMA,SignalEMA,PRICE_CLOSE,MODE_SIGNAL,1);

double MACDBLUE2=iMACD(NULL,0,FastEMA,SlowEMA,SignalEMA,PRICE_CLOSE,MODE_SIGNAL,2);

double IshRed1=iIchimoku(NULL,0,tenkanan_sen,kijun_sen,senkou_span_b,MODE_TENKANSEN,1);

double IshRed2=iIchimoku(NULL,0,tenkanan_sen,kijun_sen,senkou_span_b,MODE_TENKANSEN,2);

double IshBlue1=iIchimoku(NULL,0,tenkanan_sen,kijun_sen,senkou_span_b,MODE_KIJUNSEN,1);

double IshBlue2=iIchimoku(NULL,0,tenkanan_sen,kijun_sen,senkou_span_b,MODE_KIJUNSEN,2);

double MA1=iMA(NULL,0,maPeriod,0,ma_method,applied_price,1);

double MA2=iMA(NULL,0,MaPeriod,0,ma_method,applied_price,2);

if(MACDRED1>MACDBLUE1 && MACDRED2<MACDBLUE2 && t3!=t1)

{ // MACD買いシグナル

buy1=true;sell1=false;t3=Time[0]です。

}

if(MACDRED1<MACDBLUE1 && MACDRED2>MACDBLUE2 && t3!=t1)

{ // MACD売りシグナル

sell1=true;buy1=false;t3=Time[0];

}

if(IshRed1>MA1 && IshRed2<=MA2 && t4!=t1)

{石目シグナルが買い時にMAをクロスする。

buy2=true;sell2=false;t4=Time[0]です。

}

if(IshRed1<MA1 && IshRed2>=MA2 && t4!=t1)

{ // 石墨シグナルが売りのMAを横切る

sell2=true;buy2=false;t4=Time[0];

}

if(IshRed1>IshBlue1 && IshRed2<IshBlue2 && t5!=t1)

{ // 石目シグナル Fast crosses Slow to BUY

buy3=true;sell3=false;t5=Time[0]です。

}

if(IshRed1<IshBlue1 && IshRed2>IshBlue2 && t5!=t1)

{ // 石墨のシグナル Fast crosses Slow on SELL

sell3=true;buy3=false;t5=Time[0]です。

}

if(Add1==true && buy3==true && buy4==true && t1!=t8)

{ //オープンの追加

PlaySound("Alert.wav")。

int=MessageBox("買い注文を追加しますか?",MB_YESNO|MB_ICONQUESTION).Add the order to Buy?

if(ret==6){ticket=OrderSend(Symbol(,OP_BUY,lot,Ask,slippage,Bid-SL*Point,Ask+TP*Point,NULL,0,0,Blue);if(ticket>0)PlaySound("OK.JP", "OK.JP", "OK.JP", "OK.JP", "OK.JP", "OK.JP", "OK.JP", "OK.JP")wav");if(ticket<0)Alert("Order not set!!! error - "+GetLastError()+"set manually");}.

t8=Time[0];buy3=false;buy4=falseです。

}

if(Add1==true && sell3==true && sell4==true && t1!=t7)

{ //オープンの追加

PlaySound("Alert.wav")。

int ret2=MessageBox("売り注文を追加しますか?",MB_YESNO|MB_ICONQUESTION);

if(ret2==6){ticket=OrderSend(Symbol(,OP_SELL,lot,Bid,slippage,Ask-SL*Point,Bid+TP*Point,NULL,0,0,Red);if(ticket>0)PlaySound("ok.wav");if(ticket<0)Alert("Order not set!!! error - "+GetLastError()+"set manually");}.

t7=Time[0];sell3=false;sell4=falseです。

}

for(i=OrdersTotal()-1;i>=0;i--)

{

OrderSelect(i,SELECT_BY_POS,MODE_TRADES);

if(OrderType()==OP_BUY)

{

buy1=false;buy2=false;buy22=trueです。

が壊れる。

}

}

if(Add2==true && buy22 && IshRed1>MA1 && IshRed2<=MA2 && t4!=t1)

{マー君とTenkan_Senさんによる買い足し

PlaySound("Alert.wav")。

int ret3=MessageBox("買い注文を追加しますか?",MB_YESNO|MB_ICONQUESTION);

if(ret3==6){ticket=OrderSend(Symbol(,OP_BUY,lot,Ask,slippage,Bid-SL*Point,Ask+TP*Point,NULL,0,0,Blue);if(ticket>0)PlaySound("ok.wav");if(ticket<0)Alert("Order not set!!! error - "+GetLastError()+"set manually");}.

t4=Time[0];buy22=false;

}

if(Add2==true && sell22 && IshRed1<MA1 && IshRed2>=MA2 && t4!=t1)

{ // 馬とTenkan_Senによる売りでの加勢

PlaySound("Alert.wav")。

int ret4=MessageBox("Add order to Sell?",MB_YESNO|MB_ICONQUESTION);

if(ret4==6){ticket=OrderSend(Symbol(,OP_SELL,lot,Bid,slippage,Ask-SL*Point,Bid+TP*Point,NULL,0,0,Red);if(ticket>0)PlaySound("ok.wav");if(ticket<0)Alert("Order not set!!! error - "+GetLastError()+"set manually");}.

t4=Time[0];sell22=false;

}

if(buy1==true && buy2==true && t1!=t2)

{ //初期注文を開始する

for(i=OrdersTotal()-1;i>=0;i--)

{

OrderSelect(i,SELECT_BY_POS,MODE_TRADES);

if(OrderType()==OP_SELL)OrderClose(OrderTicket(),OrderLots(),Ask,slippage,Gold);

}

PlaySound("Alert.wav")。

ticket=OrderSend(Symbol(,OP_BUY,lot,Ask,slippage,Bid-SL*Point,Ask+TP*Point,NULL,0,0,BLUE).のようになります。)

if(ticket>0)PlaySound("ok.wav")。

if(ticket<0)Alert("Order not set!!! error - "+GetLastError()+"set manually");

t2=Time[0];buy1=false;buy2=false;buy4=true。

}

for(i=OrdersTotal()-1;i>=0;i--)

{

OrderSelect(i,SELECT_BY_POS,MODE_TRADES);

if(オーダータイプ()==OP_SELL)

{

sell1=false;sell2=false;sell22=trueとする。

が壊れる。

}

}

if(sell1==true && sell2==true && t1!=t2)

{ //初期注文を開始する

for(i=OrdersTotal()-1;i>=0;i--)

{

OrderSelect(i,SELECT_BY_POS,MODE_TRADES);

if(OrderType()==OP_BUY)OrderClose(OrderTicket(),OrderLots(),Bid,slippage,Gold);

}

PlaySound("Alert.wav")。

ticket=OrderSend(Symbol(,OP_SELL,lot,Bid,slippage,Ask+SL*Point,Bid-TP*Point,NULL,0,0,赤)。

if(ticket>0)PlaySound("ok.wav")。

if(ticket<0)Alert("Order not set!!! error - "+GetLastError()+"set manually");

t2=Time[0];sell1=false;sell2=false;sell4=true;buy22=falseです。

}

//トレイリングストップ

ダブルSL,TP,OpenPrice,Profit。

int ticketOrder,zamok,type。

文字列コマンド。

for(i=OrdersTotal();i>=0;i--)

{

OrderSelect(i, SELECT_BY_POS, MODE_TRADES);

if(trailing==true && OrderProfit()/MarketInfo(Symbol(),MODE_TICKVALUE)>0 && MathFloor(OrderProfit()/MarketInfo(Symbol(),MODE_TICKVALUE)/trailingStop)!=0 && (OrderProfit()/MarketInfo(Symbol(),MODE_TICKVALUE))>=trailingStop*MathFloor(OrderProfit()/MarketInfo(Symbol(),MODE_TICKVALUE)/trailingStop)

{

if(OrderType()==0){SL=Bid-trailingStop*Point;if(SL==OrderOpenPrice())SL+=zashita*Point;}; if(OrderType()==0){SL=Bid-trailingStop*Point}。

if(OrderType()==1){SL=Ask+trailingStop*Point;if(SL==OrderOpenPrice) SL-=zashita*Point;} 。

TP=OrderTakeProfit()です。

if(OrderType()==0)if(SL>=OrderStopLoss()+trailingStop*Point)OrderModify(OrderTicket(),OrderOpenPrice(),SL,TP,0).OrderType()==0)if(OrderType(),OrderOpenPrice(),SL,TP,0);

if(OrderType()==1)if(SL<=OrderStopLoss()-trailingStop*Point)OrderModify(OrderTicket(),OrderOpenPrice(),SL,TP,0);

}

}

return(0)です。

}

 

全部は答えませんが、間違いなくバグです。

for(i=OrdersTotal();i>=0;i--)

最後の注文はOrdersTotal()-1です。

 
こんにちは、IshimokuとMASDのレディメイドEAについて教えてください。EAは動作しますが、なぜか条件が発生したときにトレーリングストップを入れません。MQL4には詳しくないので、何を変更すればいいのかわかりません。おそらくトレーリングストップのブロックにエラーがあるのでしょう。よろしくお願いします。この機能がないと、取引に大きな支障をきたします。
ファイル:
 

マルチEAを無料で書ける/書けないか?

ダミーが用意されています。

 

こんにちは、私のEAでT/PとMagic_Numberを処方する際にご相談したいことがあります。Regards Timofey.

 

こんにちは。

このような作品をどのように書くのでしょうか?

double a; //

double b; // aとbの両方は、数字、指標の読み取り値、500本のローソクのティック数など、全く任意の値を取ることができます。

double X; // 偏差値 +-X

もし

(a+x, a-x)が値のフィールドに入る(b+x, b-x)。

{アクション}

さもなくば

{0を返す}

 
trader781:

こんにちは。

このような作品をどのように書くのでしょうか?

double a; //

double b; // aとbの両方は、数字、指標の読み取り値、500本のローソクのティック数など、全く任意の値を取ることができます。

double X; // 偏差値 +-X

もし

(a+x, a-x)が値のフィールドに入る(b+x, b-x)。

{アクション}

さもなくば

{0を返す}

xがすべての場合で同じ値であれば、本質的に2つの数字a、bを比較していることになります。ここでインターバルに入るのは問題ない。

例えば、a=10、b=11とする。つまり、12から8までの区間が13から9までの区間に収まるようにしたいのですね。

 
Alexey Kozitsyn:

xがすべての場合で同じであれば、本質的に2つの数字a、bを比較していることになります。インターバルは一切問わない。

例えば、a=10、b=11とする。つまり、12から8までの区間が13から9までの区間に収まるようにしたいのですね。

そうなんです。