Merhaba. Zaman varsa bana yardımcı olabilir misiniz Soru şu ki, danışmana iki göstergenin her sinyali için bir sipariş açmam gerekiyor (belirli bir kombinasyonla bir sinyal veriyorlar) tek kelimeyle, satın alınacak birkaç sipariş olmalı veya göstergelerin sinyallerine göre sırasıyla piyasada satış yapın. Ve piyasada sadece bir emrim var ve o kapanana kadar bir sonraki açılmıyor ...... Emirleri saymakla mı ilgili? Lütfen bana söyle. Gerekirse kodu gönderebilirim.
Şimdiden teşekkür ederim!
"if (OrdersTotal()==0)...." koşullarını kaldırın - sadece şunu söylerler: girişleri ararız ve yalnızca hiç sipariş olmadığında yeni siparişler açarız.
ve böyle bir koşul olmadan büyük bir yeni paket hemen açılmaz, ek bir koşul bulmanız gerekir. Ve bu zaten stratejinizden: Bir öncekinden T süresi boyunca yenisini açmayın veya çubukları kontrol etmeyin veya emirler arasındaki noktalarda mesafeleri koruyun..
Merhaba. Yeni başlayanlara yardım ettiğiniz için büyük bir teşekkürle başlayacağım. Her gün bir yeni başlayana, sonra diğerine ilk temel soruları kendi kendime cevaplayamayacaktım.
Ve soru şu:
Önceden, mql4 biraz farklıyken, olası bir hatayı işledikten sonra aç/kapat/değiştir gibi bir siparişin herhangi bir şekilde işlenmesinin return(0) işlevi tarafından kesintiye uğratılması gerektiğine inanılıyordu; Bu nedenle, test cihazında (her tik ile yöntemle, çerçeve bir dakikadır), aynı anda birkaç açık siparişi mevcut fiyattan kapatmak gerekirse, sırayla test cihazı tarafından kapatıldılar. gerçek resmi biraz bozan her yeni çubuk (bazen oldukça güçlü). Yeni Expert Advisor'da, birkaç siparişi tam olarak bir sinyalde ve hatta kısmen kapatmanız gerekir.
soru: her seferinde geçişi kesmeden hepsini bir döngüde (kısmen kapalı) işlemek mümkün müdür? Test eden kişi çiğneyecek mi? Onlar. hepsini tek bir çubukta kısmen kapatabilir mi?
Merhaba. Yeni başlayanlara yardım ettiğiniz için büyük bir teşekkürle başlayacağım. Her gün bir yeni başlayana, sonra diğerine ilk temel soruları kendi kendime cevaplayamayacaktım.
Ve soru şu:
Önceden, mql4 biraz farklıyken, olası bir hatayı işledikten sonra aç/kapat/değiştir gibi bir siparişin herhangi bir şekilde işlenmesinin return(0) işlevi tarafından kesintiye uğratılması gerektiğine inanılıyordu; Bu nedenle, test cihazında (her tik ile yöntemle, çerçeve bir dakikadır), aynı anda birkaç açık siparişi mevcut fiyattan kapatmak gerekirse, sırayla test cihazı tarafından kapatıldılar. gerçek resmi biraz bozan her yeni çubuk (bazen oldukça güçlü). Yeni Expert Advisor'da, birkaç siparişi tam olarak bir sinyalde ve hatta kısmen kapatmanız gerekir.
soru: her seferinde geçişi kesmeden hepsini bir döngüde (kısmen kapalı) işlemek mümkün müdür? Test eden kişi çiğneyecek mi? Onlar. hepsini tek bir çubukta kısmen kapatabilir mi?
Küçük bir koşul altında sorunsuz olabilir. Kod doğru yazılmalıdır.
Seric29 : 2 fonksiyon varsa (muhtemelen aşırı yüklenmiş), örneğin int Funkz(int a) int Funkz(int a, int b, int w) ve daha sonra program derlenirse, hangi fonksiyon daha hızlı çalışacaktır, ilki, bir argüman ya da önemli değil çünkü program zaten bir araya getirildi ve vücutta açıklanan şey ne oluyor, yoksaişlevin argümanları hafızanın ayrıldığı yığını temsil ettiği için hala küçük bir etkisi var mı?
Kodunuzda farklı sayıda argümana sahip aynı ada sahip iki işleve sahipseniz, soru hangisinin daha hızlı çağrılacağı değildir. çünkü bir işlevi çağırdığınızda Funkz() yazmazsınız, argüman sayısını belirtirsiniz. 1'i belirtin, biri çağrılacak, 3'ü belirtin - diğeri.
soru, derleyicinin aynı adı taşıyan bu tür işlevleri çiğneyip çiğneyemeyeceğidir.
Konuşma, anladığım kadarıyla kodla ilgili değil, derlenmiş dosyayla mı ilgili?
Lütfen yardım edin, puan cinsinden bazı değerlere eşit bir SL'miz var (bu kayıp seviyesidir - kullanıcı tarafından yapılandırılabilen bir parametredir) ve ayrıca günlük en düşük veya en yüksek için bir sembol fiyatımız var - bu ikinci bir kayıp durdurma gibidir ve onlar farklı zaman noktalarında farklı olmak , bir otomatik karşılaştırma işlevine ihtiyacımız var - bundan sonra robot en küçük parametreyle (satın almak için SL veya Ilow - veya satmak için SL -iHign) zararı durdurmayı ayarlayacaktır. istenen sonucu ver, neyin yanlış olduğunu anlayamıyorum ...
Kodunuzda farklı sayıda argümana sahip aynı ada sahip iki işleve sahipseniz, soru hangisinin daha hızlı çağrılacağı değildir. çünkü bir işlevi çağırdığınızda Funkz() yazmazsınız, argüman sayısını belirtirsiniz. 1'i belirtin, biri çağrılacak, 3'ü belirtin - diğeri.
soru, derleyicinin aynı adı taşıyan bu tür işlevleri çiğneyip çiğneyemeyeceğidir.
Konuşma, anladığım kadarıyla kodla ilgili değil, derlenmiş dosyayla mı ilgili?
Ve eğer işlevler farklıysa, o zaman hangisi az veya çok sayıda argümanla daha hızlı çalışacak? Bana öyle geliyor ki, farklı bir miktarla aşırı yükleme de bir yük taşıyor mu yoksa kolaylık sağlamak için mi yapılıyor?
bool operation= 0 ; for ( int pos= 0 ;pos< OrdersTotal ();pos++)
{ if ( OrderSelect (pos, SELECT_BY_POS) == false ) continue ;
if ( OrderSymbol()== Symbol ()) break ;}
//=========================================================================================================if (Hour()>= 2 &&Hour()<= 18 &&operation== 0 ){
if (OPB1== 1 )
{operation= 1 ; if (operation== 0 &&OrderSymbol()!= Symbol ()|| OrdersTotal ()== 0 )
{ OrderSend ( Symbol (),OP_BUY,lots,Ask, 0 ,Bid-ss* Point ,Ask+T* Point , "My order#" ,mn, 0 ,Green);}}
if (OrderType()==OP_BUY && OrdersTotal ()== 1 &&OrderMagicNumber()== 8 )
{ OrderSend ( Symbol (),OP_SELLSTOP, 5 *lots,OrderOpenPrice()-(ss-ss/ 4 )* Point , 0 , 0 ,SstopClose, "My order#" , 80 , 0 ,Red);}
if (OPS1== 1 )
{operation= 1 ; if (operation== 0 &&OrderSymbol()!= Symbol ()|| OrdersTotal ()== 0 )
{ OrderSend ( Symbol (),OP_SELL,lots,Bid, 0 ,Ask+ss* Point ,Bid-T* Point , "My order#" ,mn, 0 ,Red);}}
if (OrderType()==OP_SELL && OrdersTotal ()== 1 &&OrderMagicNumber()== 8 )
{ OrderSend ( Symbol (),OP_BUYSTOP, 5 *lots,OrderOpenPrice()+(ss-ss/ 4 )* Point , 0 , 0 ,BstopClose, "My order#" , 80 , 0 ,Green);}}
if (OrderMagicNumber()== 80 ){operation= 0 ;
{ for ( int ii= OrdersTotal ()- 1 ;ii>= 0 ;ii--)
{ OrderSelect (ii, SELECT_BY_POS);
int type = OrderType(); bool result = false ;
switch (type)
{ case OP_BUYSTOP : result = OrderClose( OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(), MODE_BID), 5 , Red ); //break;case OP_SELLSTOP : result = OrderClose( OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(), MODE_ASK), 5 , Red ); //break;
result = OrderDelete( OrderTicket() ); //break;
}}}}
Merhaba sevgili uzmanlar!
Yardım edin lütfen sorunu çözün.
Herhangi bir çifti test ederken, her şey doğru çalışır, ancak diğer para birimleri ile çalışırken, bekleyen emirler verilmez (geçici bir tane ayarlamanız gerekir) ve kar al tetiklendikten sonra kapatılmaz.
Приказы на проведение торговых операций оформляются ордерами. Каждый ордер имеет множество свойств для чтения, информацию по ним можно получать с помощью функций Идентификатор позиции, который ставится на ордере при его исполнении. Каждый исполненный ордер порождает сделку, которая открывает новую или изменяет уже существующую позицию...
Merhaba. Zaman varsa bana yardımcı olabilir misiniz Soru şu ki, danışmana iki göstergenin her sinyali için bir sipariş açmam gerekiyor (belirli bir kombinasyonla bir sinyal veriyorlar) tek kelimeyle, satın alınacak birkaç sipariş olmalı veya göstergelerin sinyallerine göre sırasıyla piyasada satış yapın. Ve piyasada sadece bir emrim var ve o kapanana kadar bir sonraki açılmıyor ...... Emirleri saymakla mı ilgili? Lütfen bana söyle. Gerekirse kodu gönderebilirim.
Şimdiden teşekkür ederim!
"if (OrdersTotal()==0)...." koşullarını kaldırın - sadece şunu söylerler: girişleri ararız ve yalnızca hiç sipariş olmadığında yeni siparişler açarız.
ve böyle bir koşul olmadan büyük bir yeni paket hemen açılmaz, ek bir koşul bulmanız gerekir. Ve bu zaten stratejinizden: Bir öncekinden T süresi boyunca yenisini açmayın veya çubukları kontrol etmeyin veya emirler arasındaki noktalarda mesafeleri koruyun..
Merhaba. Yeni başlayanlara yardım ettiğiniz için büyük bir teşekkürle başlayacağım. Her gün bir yeni başlayana, sonra diğerine ilk temel soruları kendi kendime cevaplayamayacaktım.
Ve soru şu:
Önceden, mql4 biraz farklıyken, olası bir hatayı işledikten sonra aç/kapat/değiştir gibi bir siparişin herhangi bir şekilde işlenmesinin return(0) işlevi tarafından kesintiye uğratılması gerektiğine inanılıyordu; Bu nedenle, test cihazında (her tik ile yöntemle, çerçeve bir dakikadır), aynı anda birkaç açık siparişi mevcut fiyattan kapatmak gerekirse, sırayla test cihazı tarafından kapatıldılar. gerçek resmi biraz bozan her yeni çubuk (bazen oldukça güçlü). Yeni Expert Advisor'da, birkaç siparişi tam olarak bir sinyalde ve hatta kısmen kapatmanız gerekir.
soru: her seferinde geçişi kesmeden hepsini bir döngüde (kısmen kapalı) işlemek mümkün müdür? Test eden kişi çiğneyecek mi? Onlar. hepsini tek bir çubukta kısmen kapatabilir mi?
Merhaba. Yeni başlayanlara yardım ettiğiniz için büyük bir teşekkürle başlayacağım. Her gün bir yeni başlayana, sonra diğerine ilk temel soruları kendi kendime cevaplayamayacaktım.
Ve soru şu:
Önceden, mql4 biraz farklıyken, olası bir hatayı işledikten sonra aç/kapat/değiştir gibi bir siparişin herhangi bir şekilde işlenmesinin return(0) işlevi tarafından kesintiye uğratılması gerektiğine inanılıyordu; Bu nedenle, test cihazında (her tik ile yöntemle, çerçeve bir dakikadır), aynı anda birkaç açık siparişi mevcut fiyattan kapatmak gerekirse, sırayla test cihazı tarafından kapatıldılar. gerçek resmi biraz bozan her yeni çubuk (bazen oldukça güçlü). Yeni Expert Advisor'da, birkaç siparişi tam olarak bir sinyalde ve hatta kısmen kapatmanız gerekir.
soru: her seferinde geçişi kesmeden hepsini bir döngüde (kısmen kapalı) işlemek mümkün müdür? Test eden kişi çiğneyecek mi? Onlar. hepsini tek bir çubukta kısmen kapatabilir mi?
Küçük bir koşul altında sorunsuz olabilir. Kod doğru yazılmalıdır.
2 fonksiyon varsa (muhtemelen aşırı yüklenmiş), örneğin int Funkz(int a) int Funkz(int a, int b, int w) ve daha sonra program derlenirse, hangi fonksiyon daha hızlı çalışacaktır, ilki, bir argüman ya da önemli değil çünkü program zaten bir araya getirildi ve vücutta açıklanan şey ne oluyor, yoksaişlevin argümanları hafızanın ayrıldığı yığını temsil ettiği için hala küçük bir etkisi var mı?
Kodunuzda farklı sayıda argümana sahip aynı ada sahip iki işleve sahipseniz, soru hangisinin daha hızlı çağrılacağı değildir. çünkü bir işlevi çağırdığınızda Funkz() yazmazsınız, argüman sayısını belirtirsiniz. 1'i belirtin, biri çağrılacak, 3'ü belirtin - diğeri.
soru, derleyicinin aynı adı taşıyan bu tür işlevleri çiğneyip çiğneyemeyeceğidir.
Konuşma, anladığım kadarıyla kodla ilgili değil, derlenmiş dosyayla mı ilgili?
Kodunuzda farklı sayıda argümana sahip aynı ada sahip iki işleve sahipseniz, soru hangisinin daha hızlı çağrılacağı değildir. çünkü bir işlevi çağırdığınızda Funkz() yazmazsınız, argüman sayısını belirtirsiniz. 1'i belirtin, biri çağrılacak, 3'ü belirtin - diğeri.
soru, derleyicinin aynı adı taşıyan bu tür işlevleri çiğneyip çiğneyemeyeceğidir.
Konuşma, anladığım kadarıyla kodla ilgili değil, derlenmiş dosyayla mı ilgili?
Ve eğer işlevler farklıysa, o zaman hangisi az veya çok sayıda argümanla daha hızlı çalışacak? Bana öyle geliyor ki, farklı bir miktarla aşırı yükleme de bir yük taşıyor mu yoksa kolaylık sağlamak için mi yapılıyor?
#define nasıl doğru yazılır söyler misiniz?
böyle yazıyorum
#define my_POS cst_Position.my_PositionBu tasarımı def olarak değiştirirseniz - her şey çalışır.
Ama sadece my_POS yazdığımda . , bu durumda işlevler listesi noktadan sonra görünmez.
Aynısı
#define pos_DATA cst_Position.getPositionDatapos_DATA'dan sonra( ipucu yok.
Neyi yanlış yapıyorum?
Merhaba sevgili uzmanlar!
Yardım edin lütfen sorunu çözün.
Herhangi bir çifti test ederken, her şey doğru çalışır, ancak diğer para birimleri ile çalışırken, bekleyen emirler verilmez (geçici bir tane ayarlamanız gerekir) ve kar al tetiklendikten sonra kapatılmaz.
Mümkünse, kodu nasıl değiştireceğimi söyleyin:
şimdiden çok teşekkür ederim
Merhaba sevgili uzmanlar!
Yardım edin lütfen sorunu çözün.
...Lütfen kodu doğru şekilde yapıştırın: