Nasıl kodlanır? - sayfa 93

 

thx ama bana nedenini açıklayabilir misin

BuyCondition = BuyValueCurrent1 != EMPTY_VALUE

neden boş_değer?

 

her neyse işe yaramıyor ve nedenini anlamıyorum ve anlamıyorum ..

işte değişkenlerim

BuyValueCurrent = iCustom(NULL,TimeFrame,IndicatorName1,NumBars,0,1); // braintrend1 [/PHP]
BuyValueCurrent2 = iCustom(NULL,TimeFrame,IndicatorName2,NumBars,0,1); // braintrend2

and here is the statement

[PHP] BuyCondition = (BuyValueCurrent != EMPTY_VALUE && BuyValueCurrent2 != EMPTY_VALUE);

gösterge (Braintrend2stop ve BrainTrend1Stop) SATILDIĞINDA bile tamamen bulanık sonuçlar verir

 
clarc:
Pozisyonu açan ve yöneten bir EA'm var, ancak bazen göstergeye aynı sinyali birden fazla veriyor ve bu sinyal her yeni pozisyon çıktığında EA açılıyor - ama ikinci veya üçüncü ve benzeri bir pozisyon istemiyorum, yapacağım sadece ilki - EA'nın bu tür çoklu girişleri önlemek için sihirli sayı ve çift temelinde açık pozisyonu kontrol etmesi mümkün mü?

İşte fikir:

int CountLongs()

{

int sayı=0;

int ticaret;

int işlemler=SiparişToplam();

for(ticaret=0;ticaret<ticaret;ticaret++) {

OrderSelect(ticaret,SELECT_BY_POS,MODE_TRADES);

if(OrderSymbol()!=Symbol() || OrderMagicNumber() != MagicNumber) devam;

if(OrderType()==OP_BUY) count++;

} //---- için

dönüş(sayım);

}

int CountShorts()

{

int sayı=0;

int ticaret;

int işlemler=SiparişToplam();

for(ticaret=0;ticaret<ticaret;ticaret++) {

OrderSelect(ticaret,SELECT_BY_POS,MODE_TRADES);

if(OrderSymbol()!=Symbol() || OrderMagicNumber() != MagicNumber) devam;

if(OrderType()==OP_SEL) count++;

} //---- için

dönüş(sayım);

}

Ve start() işlevinde:

if(CountLongs() == 0 && CountShorts() == 0) {

Buraya giriş şartınız

}

Umarım yardımcı olur.

FerruFx

 
payback:
her neyse işe yaramıyor ve nedenini anlamıyorum ve anlamıyorum ..

işte değişkenlerim

BuyValueCurrent = iCustom(NULL,TimeFrame,IndicatorName1,NumBars,0,1); // braintrend1 [/PHP]
BuyValueCurrent2 = iCustom(NULL,TimeFrame,IndicatorName2,NumBars,0,1); // braintrend2

and here is the statement

[PHP] BuyCondition = (BuyValueCurrent != EMPTY_VALUE && BuyValueCurrent2 != EMPTY_VALUE);
gösterge (Braintrend2stop ve BrainTrend1Stop) SATILDIĞINDA bile tamamen bulanık sonuçlar verir

Braintrend1 ve 2 göstergenizi bilmiyorum, sadece bir satın alma koşulu yerine getirildiğinde grafikte bir ok çizdiklerini varsaydım. MT4'te varsayılan arabelleğin değeri "BOŞ DEĞER" adlı bir sabittir, bu nedenle ok yoksa iCustom() tarafından döndürülen değer bu sabittir ve bir ok varsa döndürülen değer, okun bulunduğu fiyattır. koymak.

Anladığım kadarıyla, her iki gösterge de ok gösterdiğinde satın almak istiyorsunuz, değil mi?

 

evet tam olarak yapmak istediğim şey

 
payback:
evet tam olarak yapmak istediğim şey

Bu yüzden lütfen iCustom() sözdiziminizi kontrol edin.

 

neyi kontrol etmem gerekiyor? belki bir şeyleri özlüyorum

double iCustom( string symbol, int timeframe, string name, ..., int mode, int shift)

Sanırım bir satın alma sinyali varsa, arabellek 0'da saklanır, aksi takdirde boş ve arabellek 1'de satış sinyali vardır.

 
payback:
neyi kontrol etmem gerekiyor? belki bir şeyleri özlüyorum
double iCustom( string symbol, int timeframe, string name, ..., int mode, int shift)
Sanırım bir satın alma sinyali varsa, arabellek 0'da saklanır, aksi takdirde boş ve arabellek 1'de satış sinyali vardır.

Endeksini buraya yaz, bakayım.

 

tamam teşekkürler!

ve lütfen açıkla

Dosyalar:
 
payback:
tamam teşekkürler! ve lütfen açıkla

BrainTrend1Stop.mq4'ü açın.

Dosyanın başında şunları bulabilirsiniz:

extern int NumBars=500;

extern int EnableAlerts=0;

extern int SignalID=0;[/PHP]This means that you have to fill those three parameters as arguments in the iCustom() call, like this:

BuyValueCurrent = iCustom(NULL,0,"BrainTrend1Stop",NumBars,EnableAlerts,SignalID,0,1); // braintrend1

[/PHP]About the buffer's number, you can see this:

#property indicator_color1 Magenta

#property indicator_color2 Aqua[/PHP]So the buffer 0 is Magenta and the buffer 1 is Aqua.

Thus if the Buy arrow's color is Aqua, the buffer's number is 1 and the iCustom call is:[PHP]BuyValueCurrent = iCustom(NULL,0,"BrainTrend1Stop",NumBars,EnableAlerts,SignalID,1,1); // braintrend1
A little lower you have:[PHP] SetIndexEmptyValue(1,0.0);

This means that the default empty value for the buffer 1 is set to 0.0; so when there is no arrow, the value returned by the iCustom() call will be 0.0.

So you should know the presence of the arrow checking its value against 0, like this (if the second indic follows the same behavior):[PHP]BuyCondition = (BuyValueCurrent > 0 && BuyValueCurrent2 > 0);

İkinci gösterge hakkında, aynı analizi kendi başınıza yapabilmeniz gerektiğini düşünüyorum.