Yeni başlayanlardan sorular MQL5 MT5 MetaTrader 5 - sayfa 743

 

Herkese merhaba! MQL5 hakkında soru.

Bir biletle ilgili anlaşmayı kapatma işlevine yorum eklemek istiyorum.

Şu ana kadar CTrade sınıfını kullandım fakat böyle bir imkan sağlamıyor.

Yani OrderSend'i kullanmanız gerekiyor, değil mi?

Burayı anlamıyorum: https://www.mql5.com/ru/docs/constants/tradingconstants/enum_trade_request_actions#trade_action_deal Örnekte OnStart işlevi yazılmıştır. Yoksa her şeyi kullanıcı tanımlı bir fonksiyona yazıp gerektiğinde çağırmak mümkün müdür?

OnInit'e bir şey eklemem gerekiyor mu?

Ve kapanışı OrderSend üzerinden yazarsam ve açılışları ve değişiklikleri CTrade sınıfına göre bırakırsam çakışmalar olur mu?

Teşekkür ederim!

Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Типы торговых операций
Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Типы торговых операций
  • www.mql5.com
Стандартные константы, перечисления и структуры / Торговые константы / Типы торговых операций - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
Artyom Trishkin :

Kabaca söylemek gerekirse - size yazdıklarımı dikkatlice tekrar okuyun ve kodunuzdan sonsuz bir döngü atın.

Bir Uzman Danışmanı sonsuz bir döngüye sokmanın doğru karar olduğundan emin misiniz?

Öncelikle bu bir çözüm değil, bahsettiğim şeyin özünü gösteren bir örnek.

İkincisi, bu sonsuz bir döngü değildir, program sona erdiğinde zarif ve güvenli bir şekilde kırılacaktır.

Üçüncüsü, bana milyonlarca yol düşünebileceğim tamamen farklı bir şeyi çözmek hakkında yazıyorsun.

Onlar. döngümü durumumun bir engeli olarak mı gördün? Gerçekten?

Genel olarak anladım. Ne yazık ki, bu konuya getirildim ...

Ama yine de teşekkürler!

 
Marat Sultanov :

İlk olarak, bu bir çözüm değil, bahsettiğim şeyin özünü göstermek için bir örnek.

İkincisi, bu sonsuz bir döngü değildir, program sona erdiğinde zarif ve güvenli bir şekilde kırılacaktır.

Üçüncüsü, bana milyonlarca yol düşünebileceğim tamamen farklı bir şeyi çözmek hakkında yazıyorsun.

Onlar. Döngümü, durumumun tökezleyen bir bloğu olarak mı gördün? Gerçekten?

Genel olarak anladım. Ne yazık ki, bu konuya getirildim ...

Ama yine de teşekkürler!

Programın sonunda - evet, kesintiye uğrayacaktır.

Ardından, gerçekten ağır bir hesaplama yapın ve ayarlar penceresini aradığınızda onu kesmeye çalışın.

Kodunuzun çalışmasına baktım - ayarlardaki değişkeni değiştirmeye tepki vermiyor - yalnızca danışmanı kaldırarak kesilebilecek sonsuz bir döngü yapmasına izin vermiyor ve tekrar başlamayacak - sen grafikten kaldırdım...

Bir zamanlayıcı aracılığıyla ağır bir hesaplamayı takip etmeye çalışın. Burada zamanlayıcının hesaplama sırasında çağrılacağından emin olmasam da.

Ancak her durumda, uzun bir hesaplamayı taklit etmek için döngü yapmak iyi bir çözüm değildir.

 
Merhaba. Lütfen bana bir fonksiyonun giriş parametrelerinde bir diziyi nasıl ayarlayacağımı söyler misiniz?
 double test[];


double Test(.....)
{

}
 
Fresto :
Merhaba. Lütfen bana bir fonksiyonun giriş parametrelerinde bir diziyi nasıl ayarlayacağımı söyler misiniz?

Bir işleve bir dizi iletmek?

Aşağı yukarı şöyle:

 //+------------------------------------------------------------------+
double test[];
ArrayResize (test, 2 );
ArrayInitialize (test, 256 );

Print (Test(test));
//+------------------------------------------------------------------+
double Test( double &array[])
{
   if ( ArraySize (array)== 0 ) return ( WRONG_VALUE );
   array[ 0 ]+=array[ 1 ];
   return (array[ 0 ]);
}
//+------------------------------------------------------------------+

Şey... bir temanın varyasyonları...

 
Artyom Trishkin :

Programın sonunda - evet, kesintiye uğrayacaktır.

Ardından, gerçekten ağır bir hesaplama yapın ve ayarlar penceresini aradığınızda onu kesmeye çalışın.

Kodunuzun çalışmasına baktım - ayarlardaki değişkeni değiştirmeye tepki vermiyor - yalnızca danışmanı kaldırarak kesilebilecek sonsuz bir döngü yapmasına izin vermiyor ve tekrar başlamayacak - siz grafikten kaldırdım...

Bir zamanlayıcı aracılığıyla ağır bir hesaplamayı takip etmeye çalışın. Burada zamanlayıcının hesaplama sırasında çağrılacağından emin olmasam da.

Ancak her durumda, uzun bir hesaplamayı taklit etmek için döngü yapmak iyi bir çözüm değildir.

Teşekkür ederim!

Açık. Ama ne yazık ki makul bir ihtiyaç var.

Ancak her durumda, uzun bir hesaplamayı taklit etmek için döngü yapmak iyi bir çözüm değildir.

Örneğin, büyük bir dosyaya yazmanın veya büyük bir dosyadan okumanın veya her ikisinin de gerekli olduğu durumlar vardır. Fantaziyi açarsanız, çok fazla popo icat edebilirsiniz ve uygulandığında acı kare artar :)

Programın kesintiye uğramasını izlemek için _StopFlag kullanma yeteneğinin orada olmasını garip buluyorum, ancak giriş parametrelerinde herhangi bir değişiklik yok :(

 
merhaba, böyle bir soru: yorumun grafikte görüntülenme açısını değiştirmek mümkün mü ????
 
Dmitry Melnichenko :
merhaba, böyle bir soru: yorumun grafikte görüntülenme açısını değiştirmek mümkün mü ????

Numara.

Yalnızca kendiniz bir OBJ_LABEL grafik etiketi oluşturur ve özelliğini değiştirirseniz

OBJPROP_ANGLE


işlev aracılığıyla: ObjectSetDouble
 
Beyler göstergeyi bulmama yardım edin
Dosyalar:
llassiff.mq5  17 kb
 
Rafael Sahibgareev :
Beyler göstergeyi bulmama yardım edin
Anlamadığım bir kod bölümü var. Kendin düzeltmen gerekiyor.
Dosyalar:
llassiff.mq5  18 kb