Nasıl kodlanır? - sayfa 80

 
 

Stoploss'u gizleme

Herhangi biri bir EA'da stoploss ve takip eden stopların nasıl gizleneceğini söyleyebilir mi? (Brokerlerin stoploss'larımı veya takip eden stopları görmeleri fikrinden hoşlanmıyorum, bu onlar için bir hedef gibi). Teşekkürler.

 
jturns23:
Herhangi biri bir EA'da stoploss ve takip eden stopların nasıl gizleneceğini söyleyebilir mi? (Brokerlerin stoploss'larımı veya takip eden stopları görmeleri fikrinden hoşlanmıyorum, bu onlar için bir hedef gibi). Teşekkürler.

Kodunuzda basit, bir durma değeri ve bir hedef değer tanımlarsınız.

Ardından, bir ticaret yaptıktan sonra, ticarete girdiğiniz fiyatı alın ve ardından her yeni tikte, durağınızın mı yoksa hedefinizin mi vurulduğunu kontrol edin.

Vurulduysa, EA'nın OrderClose işlevini yürütmesini sağlayın.

Şahsen, 50-100 pip fiyat hareketinden çok uzakta olmasına rağmen, komisyoncunun görebileceği bir durağım var. Bu sayede herhangi bir nedenle terminal çökerse en azından ani hareketlere karşı korunmuş olursunuz.

Şerefe,

Hiachiever

 
jturns23:
Herhangi biri bir EA'da stoploss ve takip eden stopların nasıl gizleneceğini söyleyebilir mi? (Brokerlerin stoploss'larımı veya takip eden stopları görmeleri fikrinden hoşlanmıyorum, bu onlar için bir hedef gibi). Teşekkürler.

Gerçekleştirmeye çalıştığınız şeye çoğunlukla 'yumuşak duruşlar' denir, burada P&L'yi dinamik olarak takip edersiniz, komisyoncunun 'sert duruşlar' yerleştirmek yerine, gerekli hedeflere ulaşıldığında emirleri/siparişleri kapatırsınız. görebilir ve uçabilir...

Bir dereceye kadar bir sabit durdurma esastır ('her ihtimale karşı' senaryosu için ..), ancak Fxopen gibi tamamen vicdansız bir komisyoncunuz varsa bu bile sizi kurtarmaz: -

https://www.forex-tsd.com/forum/commercial-talks/9512-complaints-and-brokers-scam#comment_273270

 

zor bir soru!

Sayın Baylar ve Bayanlar

MT4'te programlama için yeniyim. Bir EA kodunu bitirdim ama test ettiğimde bazı hatalar vardı Birincisi, kodum neredeyse aynı anda ve aynı fiyata 4 emir açmak istiyor, ancak EA'm bazen tamamen açabiliyor, ancak diğer durumlar, emirler sadece birer birer ve farklı fiyatlarla açıldı.

Kullanarak bu sorunu çözebilir miyim sizce?

if(IsTradeAllowed()==false) Sleep(10000);

hepiniz bu sorunu çözmeme yardım edebilir misiniz?

Şimdiden teşekkürler!

 

Bu, tüm pozisyonları kapatmak için benim işlevim. Bence çok basit. ancak EA her zaman tüm pozisyonları kapatmak için uzun zaman harcar, bu da kapanış fiyatının değişebileceği anlamına gelir.

sorunu çözmeme yardım eder misin?

şimdiden teşekkürler!

void close_all_position_now(int total_order)

{

int bilet=0;

çift hacim=0, fiyat=0;

for(int i=0;i<total_order;i++)

{

if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==yanlış)

kırmak;

// OrderSelect(i,SELECT_BY_POS,MODE_TRADES);

if (OrderMagicNumber()==magic_number && OrderType()==0)

{

bilet=SiparişTicket();

hacim=SiparişLotları();

fiyat=Teklif;

OrderClose(bilet,hacim,fiyat,slippage,CLR_NONE);

}

else if (OrderMagicNumber()==magic_number && OrderType()==1)

{

bilet=SiparişTicket();

hacim=SiparişLotları();

fiyat=Sor;

OrderClose(bilet,hacim,fiyat, kayma,CLR_NONE);

}

else if(OrderMagicNumber()==magic_number && OrderType()>=2)

{

bilet=SiparişTicket();

OrderDelete(bilet);

}

}

}

 
ys16:
... ancak EA her zaman tüm pozisyonları kapatmak için uzun zaman harcar, bu da kapanış fiyatının değişebileceği anlamına gelir. ...}

Aynı fiyattan birçok pozisyonu kapatmanın yolları sadece ikisidir:

1) Aynı TP'ye (veya SL'ye) sahipler.

2) Kapatmak istediğiniz toplam lot büyüklüğünde zıt bir pozisyon açın. Daha sonra bazı CloseBy() yapabilirsiniz.

Aynı fiyata birkaç pozisyon açmak aynı problemdir: veya bekleyenleri kullanırsınız veya toplam lotlardan sadece bir pozisyon açarsınız ve sonunda kısmi kapanışları yönetirsiniz.

 
Michel:
Aynı fiyattan birçok pozisyonu kapatmanın yolları sadece ikisidir:

1) Aynı TP'ye (veya SL'ye) sahipler.

2) Kapatmak istediğiniz toplam lot büyüklüğünde zıt bir pozisyon açın. Daha sonra bazı CloseBy() yapabilirsiniz.

Aynı fiyata birkaç pozisyon açmak aynı problemdir: veya bekleyenleri kullanırsınız veya toplam lotlardan sadece bir pozisyon açarsınız ve sonunda kısmi kapanışları yönetirsiniz.

Sevgili Michel,

Çok teşekkürler. peki maliyet? zıt pozisyonların yayılması için ödeme yapmam gerekiyor mu?

EA'nın tüm pozisyonları çok kısa sürede kapatamamasının nedeni nedir? Bunun nedeni, yakın emirlerin yerine getirilmesi için biraz zamana ihtiyaç duymasıdır.

bazen bir fiyat değişikliğinden sonra 3 pozisyon kapatılabilir, ancak bazen sadece 1 pozisyon kapatılabilir.

MQL4 programlama ile ilgili bazı kaynaklarınız var mı? EA'yı yürütmek için zaman ölçeğini bilmiyordum.

Ben bir mühendis olduğum için C programlamayı gerçekten biliyorum, ancak EA'm programladığım şeyi tam olarak uygulayamıyor.

ne dersin

OrderSelect(i,SELECT_BY_POS,MODE_TRADES);

if(OrderMagicNumber()==magic_number && OrderType()==OP_BUY)

EA'nın her döngüsünden daha uzun olan bu tür bir işlevin yürütülmesinin çok uzun zaman aldığını düşünüyor musunuz?

 
ys16:
Sevgili Michel,

Çok teşekkürler. peki maliyet? zıt pozisyonların yayılması için ödeme yapmam gerekiyor mu?

EA'nın tüm pozisyonları çok kısa sürede kapatamamasının nedeni nedir? Bunun nedeni, yakın emirlerin yerine getirilmesi için biraz zamana ihtiyaç duymasıdır.

bazen bir fiyat değişikliğinden sonra 3 pozisyon kapatılabilir, ancak bazen sadece 1 pozisyon kapatılabilir.

MQL4 programlama ile ilgili bazı kaynaklarınız var mı? EA'yı yürütmek için zaman ölçeğini bilmiyordum.

Ben bir mühendis olduğum için C programlamayı gerçekten biliyorum, ancak EA'm programladığım şeyi tam olarak uygulayamıyor.

ne dersin

OrderSelect(i,SELECT_BY_POS,MODE_TRADES);

if(OrderMagicNumber()==magic_number && OrderType()==OP_SATIN AL)

EA'nın her döngüsünden daha uzun olan bu tür bir işlevin yürütülmesinin çok uzun zaman aldığını düşünüyor musunuz?

Birçok broker "tam riskten korunmaya" izin verir, bu, kullanılan marjın uzun pozisyonlar ile kısa pozisyonlar arasındaki fark üzerinden hesaplandığı anlamına gelir. Bu nedenle, tamamen hedge edilmiş bir pozisyon için kullanılan bir marj yoktur ve her ikisini de (birbiri ardına) ek spread olmadan kapatabilirsiniz. Yani bir pozisyonu normal olarak veya zıt bir pozisyon açarak tek bir pozisyon açarsanız sadece bir spread harcarsınız.

Zaman hakkında, kodun yürütme süresi çok hızlıdır ve komisyoncunun işlem masası zamanı ile hiçbir ilgisi yoktur.

 

çevrimdışı grafikte uzman

Merhaba,

Çevrimdışı grafikte bir EA kullanmaya çalışıyorum (örneğin, period_converter tarafından oluşturulan gibi). İçeride while() döngüsünü kullanması gereken keneler almazlar. Ancak, birkaç dakika sonra çevrimdışı grafiklerde "Güncelleme bekleniyor" mesajı görüntülenir ve artık güncellenmez. Bunun bir tür kilitlenme olduğundan şüpheleniyorum, çünkü başka bir çevrimdışı grafik açtığımda doğru şekilde güncelleniyor ve kapattığımda orijinal grafik bir sonraki "Güncelleme bekleniyor" kilitlenmesine kadar bir süre için uygun.

Yanlış bir şey mi yapıyorum yoksa bu bir MT4 sorunu mu?