Nasıl kodlanır? - sayfa 78

 

Şimdi işe koyuldum.

 
hedge4x:
Bu satır while(!IsAllClosed) {CloseAllTrades(); dönüş;}

MT düşerse ana başlangıçta tüm açık pozisyonları kapatır

ve yeniden başlatıyorum. Bu satırı koymanın bir yolu var mı

closealltrades işlevinde tüm açık pozisyonları kapatmayacak

MT4 yeniden başlatıldıktan sonra?

Teşekkürler.

Evet, üzgünüm, bool'u başlangıç zamanında şu şekilde tanımlayabilirsiniz:

bool IsAllClosed = true ; //Global variable[/PHP]

Then it becomes even better to define a extern variable, so you can keep the control :[PHP]extern bool CloseAll = false ; //Global variable

void CloseAllTrades()

{

int cnt;

CloseAll = false;

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

{

OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);

if (OrderMagicNumber()==GetMagicNumber())

CloseAll = CloseAll || !OrderClose(OrderTicket(), OrderLots(), OrderClosePrice(), MarketInfo(OrderSymbol(), MODE_SPREAD), Yellow);

}

}

void start()

{

while(CloseAll) {CloseAllTrades(); return;}

...

Bu yöntemin ana avantajı, EA'nın her bir tikte her pozisyonu, hepsi kapanana kadar kapatmaya çalışmasıdır.

 

yarı profetable ilk EA ile gerekli yardım

Herkese selam...

büyük uzman danışman bulder web sitesi tarafından bir EA yaptım ve test ettim ve geçen yıl için karlı buldum ama bence bu geliştirilebilir ...

yani herhangi biri bu EA'yı geliştirmeye yardımcı olabilir mi?

EA hakkında detaylı bilgi..

EA, biri benim, diğeri ise bublic fourms "sıfır gecikmeli macd" üzerinde bulunan iki göstergeye geçti

şimdi uzman her zaman çalışıyor, al'a girin, sonra kapatın ve satmak için ters çevirin vb.

sadece belirli zamanlarda çalışmasını sağlamam gerekiyor, bir para yönetimi eklemem gerekiyor ve bir sonraki "1 dakikalık" kandel ile satın alma veya satma işlemini geciktirmek için ihtiyacım olan son şey ama aslında EA 1H kandel üzerinde çalışıyor ...

bu konuda nasıl yardımcı olabileceğini bulmayı umuyorum

Hepinize teşekkür ederim

saygılarımla

terbiyeci

Dosyalar:
 

çalıştırdığım dosya adına nasıl başvurulur?

Merhaba,

Çalıştırdığım bir dosya adına nasıl başvurabileceğimi bilmek istiyorum.

Örneğin, supertrader.mq4 adlı bir komut dosyası çalıştırırsam ve supertrader komut dosyasından supertrader_logfile adlı bir günlük dosyası açmak istersem.

Çalıştırdığım dosyanın adını tutan bir değişken var mı?

Teşekkürler.

 
star90:
Merhaba,

Çalıştırdığım bir dosya adına nasıl başvurabileceğimi bilmek istiyorum.

Örneğin, supertrader.mq4 adlı bir komut dosyası çalıştırırsam ve supertrader komut dosyasından supertrader_logfile adlı bir günlük dosyası açmak istersem.

Çalıştırdığım dosyanın adını tutan bir değişken var mı?

Teşekkürler.

Belki komut dosyasına void Print( ...) ekleyerek.

void Print( ...) Uzman günlüğüne bir mesaj yazdırır.

 

adria'ya

PM'imi gördün mü?

büyük olmak

 

Kurt Dalgası. yardımınıza ihtiyaçım var

Sevgili Codersguru,

Ben bir programcı değilim ve deneme yanılma tarzımda, geliştirmeye çalıştığım kurt dalgası "ikinci parametre , ObjectTextSetFunction bir dize olmalı" sinyalini veriyor.

Lütfen düzeltmeme yardım et.

Beklentin için teşekkür ederim.

Dosyalar:
wolfwave.rar  3 kb
 

Merhaba arkadaşlar, 5 dakika veya 10 dakika ya da her neyse, doğru olan bir bool işlevine ihtiyacım var. Yeni bir barı nasıl kontrol edeceğimi zaten biliyorum ama bu yeterli değil.

 
nittany1:
Merhaba arkadaşlar, 5 dakika veya 10 dakika ya da her neyse, doğru olan bir bool işlevine ihtiyacım var. Yeni bir barı nasıl kontrol edeceğimi zaten biliyorum ama bu yeterli değil.

Belki

double LastRedraw = 0;

if(TimeLocal() - LastRedraw > 300)

{

Print();

ObjectsRedraw();

Print("ObjectsRedraw Done");

LastRedraw = TimeLocal();

}

 
Linuxser:
Belki

double LastRedraw = 0;

if(TimeLocal() - LastRedraw > 300)

{

Print();

ObjectsRedraw();

Print("ObjectsRedraw Done");

LastRedraw = TimeLocal();

}

[/code]

Veya bu:

[KOD]

bool ElapsedTimeCheck(int MyMinutes)

{

statik tarihsaat OldTime;

if (EskiZaman == 0)

OldTime = TimeCurrent() + MyMinutes * 60; // bir kez başlatıldı...

if (TimeCurrent() >= EskiZaman)

{

OldTime = TimeCurrent() + MyMinutes * 60;

bool koşul = doğru;

}

başka koşul = yanlış;

dönüş(koşul);

}