Nasıl kodlanır? - sayfa 280

 

Demo veya strateji test cihazında görünmeyen gerçek hesaplarda kesinlikle sorunlar olabilir, ancak bunlar genellikle tekrarlanmaz ve seyrek görülür. Bunu hiç görmedim veya duymadım.

Açıklamanızdan, sorun oluştuğunda kaç işlemin açık olduğunu belirleyemiyorum. Herhangi bir işlem açıkken hata meydana geliyorsa, bu bir gizemdir. Diyelim ki 5 işlem açıkken ortaya çıkarsa, bunun muhtemelen sorunla bir ilgisi vardır.

ERR_TRADE_DISABLED 133 Ticaret devre dışı. Tüm ticaret girişimleri durdurulmalıdır.

Bu hatanın belgeleri, EA'nın ticareti yerleştirme biçiminde bir şeylerin yanlış olduğunu gösteriyor gibi görünüyor. Ancak her iki EA da aynı OrderSend() mantığını kullandığından, bunun 2 EA'nın çalıştığı gerçeğiyle bir ilgisi olup olmadığını merak ediyorum. Normalde herhangi bir çekişme sorunu "Ticaret İçeriği Meşgul"e (146) neden olur ve herhangi bir hesap sorunu "Yetersiz Fon" (134) hatasına neden olur. Bir seferde yalnızca bir EA çalıştırmaya çalışmak ve bunun bir fark yaratıp yaratmadığını görmek faydalı olacaktır.

 

Avasys

Bu aptalca gelebilir, ancak EA'yı derlediniz, değil mi?

Derlemeden sonra, Experts klasöründe bir ex4 dosyası olmalıdır.

 
michaelB:
Bu aptalca gelebilir, ancak EA'yı derlediniz, değil mi? Derlemeden sonra, Experts klasöründe bir ex4 dosyası olmalıdır.

benim de bilmem gereken bu

mq4 dosyasını uzmanlar klasörüne yapıştırdım ancak MT4'ü yeniden başlattığımda uzmanlar klasöründe ex4 dosyası oluşturmadı,

bu yüzden hata varsa kodu kontrol etmem gerekiyor

 

IndicatorShortName rengi nasıl değiştirilir

Sayın Baylar,

Bu satır için kendi rengimi koda nasıl ekleyebilirim?

GöstergeShortName(GetTimeFrameStr() + " MACD ("+FastEma+","+SlowEma+","+SignalSMMA+")");

sol üst köşede ayrı bir gösterge penceresinde sahip olduğum küçük bilgilerin rengini değiştirmek için?

Pucio

 

BU KODDA NE OLDUĞUNU BİRİ SÖYLEYEBİLİR Mİ?

MQ4 DOSYASINI EXPERTS KLASÖRÜNE YAPIŞTIRDIĞIMDA EX4 DOSYASINI OLUŞTURMADIĞINDAN HERHANGİ BİR HATA VAR MI?

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

//| basit EA.mq4 |

//| Telif hakkı © 2011, luktom.biz |

//| www.luktom.biz/tr |

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

#property telif hakkı "Telif hakkı © 2011, luktom.biz."

#özellik bağlantısı "http://www.luktom.biz"

harici çift stopLoss = 300.0;

harici çift alProfit = 500.0;

harici dize Başla = "2: 00";

dış dize Bitiş = "10: 00";

dış çift mesafe = 60;

bool isECN = doğru;

bool koşul = yanlış;

bool koşul2 = yanlış;

çift düşük;

çift yüksek;

harici çift lot = 0.1;

int büyü = 1232344524285020;

int kayma = 1;

string yorum = "";

int bileti;

int kısa = 0;

uzun int = 0;

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

//| uzman başlatma işlevi |

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

int init()

{

//----

//----

(0) dönüş;

}

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

//| uzman sıfırlama işlevi |

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

int tanım ()

{

//----

Yazdır (countOrders (sihir, OP_BUY));

//----

(0) dönüş;

}

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

//| uzman başlatma işlevi |

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

int başlangıç()

{

Yazdır (Hesap Para Birimi ());

//----

if (isGoodTime (Başla, Bitir))

{

kısa = 0;

uzun = 0;

eğer (! koşul)

{

düşük = Teklif;

yüksek = Sor;

}

koşul = doğru;

if (Teklif < düşük) düşük = Teklif;

if (Sor > yüksek) yüksek = Sor;

}

if ((yüksek-düşük) * 1000 > mesafe)

{

koşul2 = doğru;

}

if (! isGoodTime (Başla, Bitir))

{

koşul = yanlış;

}

if (! isGoodTime (Başla, Bitir) & & koşul2)

{

if (countOrders (sihir, OP_SELL) == 0)

{

if (Teklif « = (CRL-0.0005) & & kısa == 0)

{

kısa + +;

if (isECN == yanlış)

{

OrderSend (Symbol (), OP_SELL, lotlar, Bid, slippage, sltpValue (Ask + stopLoss * Point, stopLoss), sltpValue (Ask-takeProfit * Point, takeProfit), yorum, büyü);

}

eğer (isECN)

{

bilet = OrderSend (Symbol (), OP_SELL, lotlar, Teklif, kayma, 0,0, yorum, büyü);

OrderSelect (bilet, SELECT_BY_TICKET);

OrderModify (ticket, OrderOpenPrice (), sltpValue (Ask + stopLoss * Point, stopLoss), sltpValue (Bid-takeProfit * Point, takeProfit), 0);

}

}

}

if (countOrders (sihir, OP_BUY) == 0)

{

if ((yüksek sor) > = 0,005 & & uzun = = 0)

{

uzun + +;

if (isECN == yanlış)

{

OrderSend (Symbol (), OP_BUY, lotlar, Ask, slippage, sltpValue (Ask-stopLoss * Point, stopLoss), sltpValue (Bid + takeProfit * Point, takeProfit), yorum, büyü);

}

eğer (isECN)

{

bilet = OrderSend (Symbol (), OP_BUY, lot, Ask, slippage, 0,0, yorum, büyü);

OrderSelect (bilet, SELECT_BY_TICKET);

OrderModify (ticket, OrderOpenPrice (), sltpValue (Bid-stopLoss * Point, stopLoss), sltpValue (Ask + takeProfit * Point, takeProfit), 0);

}

}

}

}

//----

(0) dönüş;

}

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

bool isGoodTime (string, string, Begin, End) {

if (TimeCurrent () > Localtime (Başlangıç) & & TimeCurrent < Localtime () (Bitiş)) {

dönüş (doğru);

}

dönüş (yanlış);

}

int countOrders (int, int oMagic oType) {

int sayı = 0;

for (int i = 0; i < Sipariş Toplamı (); i ++) {

if (Sipariş Seçimi (i, SELECT_BY_POS)) {

if (OrderMagicNumber () == oMagic) {

if (OrderSymbol () = the = Symbol ()) {

if (OrderType () == oType || oType < 0) {

saymak ++;

}

}

}

}

}

dönüş (sayım);

}

double sltpValue (double, int w1 w2)

{

eğer (w2 = = 0)

dönüş (0);

dönüş (NormalizeDouble (w1, Rakamlar));

}

 
Avasys:
BU KODDA NE OLDUĞUNU BİRİ SÖYLEYEBİLİR Mİ?

MQ4 DOSYASINI EXPERTS KLASÖRÜNE YAPIŞTIRDIĞIMDA EX4 DOSYASINI OLUŞTURMADIĞINDAN HERHANGİ BİR HATA VAR MI?

Bize bu ea'yı nereden bulduğunu söyler misin?

Adeta karışmış gibi görünüyor. Örneğin, isGoodTime işlevinin tanımına sahip olduğunuz 129. satırda şunu görüyoruz:

bool isGoodTime (string, string, Begin, End)

olmalı:

bool isGoodTime (dize Başlangıcı, dize Sonu)

Ea'da bunun gibi birçok hata var. Görünüşe göre kod eksik veya bu şekilde kod değişikliği ile korunuyor ve bu da bu kaynağı gereksiz kılıyor.

 
Kalenzo:
Bize bu ea'yı nereden bulduğunu söyler misin?

Adeta karışmış gibi görünüyor. Örneğin, isGoodTime işlevinin tanımına sahip olduğunuz 129. satırda şunu görüyoruz:

bool isGoodTime (string, string, Begin, End)

olmalı:

bool isGoodTime (dize Başlangıcı, dize Sonu)

Ea'da bunun gibi birçok hata var. Görünüşe göre kod eksik veya bu şekilde kod değişikliği ile korunuyor ve bu da bu kaynağı gereksiz kılıyor.

[lang=pl]Ben bir yazarım. Avasys için mq4 dosyası ekliyorum. isGoodTime kod işlevinde kimlerin değiştiğini bilmiyorum. Terminalimde çalışıyor. Avasys neden bu kadar gerginsin?

Eğer bir sorununuz varsa bunu forumda konuşmak yerine benimle iletişime geçin.[/lang]

Dosyalar:
 
g.pociejewski:
[lang=pl]Ben bir yazarım. Avasys için mq4 dosyası ekliyorum. isGoodTime kod işlevinde kimlerin değiştiğini bilmiyorum. Terminalimde çalışıyor. Avasys neden bu kadar gerginsin? Eğer bir sorununuz varsa bunu forumda konuşmak yerine benimle iletişime geçin.[/lang]

Üzülmüyorum seni forumda bulamadım

Bu EA iyi çalışıyor ancak yine günde birden çok işlem yapıyor. Bu yüzden endişelerim EA'dan günde sadece bir işlem yapmasını istemekti.

 
CodeMeister:
Demoda veya strateji test cihazında görünmeyen gerçek hesaplarda kesinlikle sorunlar olabilir, ancak genellikle tekrarlanmazlar ve seyrek görülürler. Bunu hiç görmedim veya duymadım.

Açıklamanızdan, sorun oluştuğunda kaç işlemin açık olduğunu belirleyemiyorum. Herhangi bir işlem açıkken hata meydana geliyorsa, bu bir gizemdir. Diyelim ki 5 işlem açıkken ortaya çıkarsa, bunun muhtemelen sorunla bir ilgisi vardır.

ERR_TRADE_DISABLED 133 Ticaret devre dışı. Tüm ticaret girişimleri durdurulmalıdır.

Bu hatanın belgeleri, EA'nın ticareti yerleştirme biçiminde bir şeylerin yanlış olduğunu gösteriyor gibi görünüyor. Ancak her iki EA da aynı OrderSend() mantığını kullandığından, bunun 2 EA'nın çalıştığı gerçeğiyle bir ilgisi olup olmadığını merak ediyorum. Normalde herhangi bir çekişme sorunu "Ticaret İçeriği Meşgul"e (146) neden olur ve herhangi bir hesap sorunu "Yetersiz Fon" (134) hatasına neden olur. Bir seferde yalnızca bir EA çalıştırmaya çalışmak ve bunun bir fark yaratıp yaratmadığını görmek faydalı olacaktır.

Sorun yaşayan EA, bir seferde yalnızca bir işlem açar. Hatalar oluştuğunda başka hiçbir işlem açık değildir. Sadece bir EA çalıştırmayı deneyeceğim ve bunun işe yarayıp yaramadığını göreceğim. Tavsiye için teşekkürler.

 

MT4 etiketi nasıl okunur

Selam,

Bir göstergeyi değiştirdim ve EA'mın OBJ_LABEL'deki değerleri alabilmesi için değerlere sahip bir OBJ_LABEL nesnesi oluşturdum. Bu değerler fiyat noktaları ve bunları tutmak için göstergede başka bir tampon oluşturamıyorum, bu yüzden onları bu etiketlere yerleştirdim. İyi bir çözüm gibi görünüyor, AMA, EA'mda MT4'te bir etiketi nasıl OKUyacağımı anlayamıyorum! GETOBJECT işlevini kullanıyorum, ancak yalnızca belirli özellikleri döndürecek ve bir etiketin veya metin nesnesinin metin değeri bunlardan biri değil!

Burada bana yardım edebilecek var mı?

Teşekkürler!