Yeni başlayanlardan sorular MQL5 MT5 MetaTrader 5 - sayfa 741 1...734735736737738739740741742743744745746747748...1503 Yeni yorum Alexey Volchanskiy 2017.04.07 00:50 #7401 fxsaber : Sapıklık olmadan sordun. Ve eğer onlarla Yani böyle double GetPositionCommission( void ){ double Commission = :: PositionGetDouble ( POSITION_COMMISSION ); // На случай, если POSITION_COMMISSION не работает if (Commission == 0 ) { const ulong Ticket = MT4ORDERS::GetPositionDealIn(); if (Ticket > 0 ) { const double LotsIn = :: HistoryDealGetDouble (Ticket, DEAL_VOLUME ); if (LotsIn > 0 ) Commission = :: HistoryDealGetDouble (Ticket, DEAL_COMMISSION ) * :: PositionGetDouble ( POSITION_VOLUME ) / LotsIn; } } return (Commission);} Veya Bunun eski bir gönderi olduğunu biliyorum, ama az önce bir şarapnel bana çarptı. Bu parça doğru değil, forex komisyonu sıfır olabilir // На случай, если POSITION_COMMISSION не работает if (Commission == 0 ) Maksym Moroz 2017.04.07 06:22 #7402 Artyom Trishkin : ObjectGetValueByShift() (yalnızca MT4) , ObjectGetValueByTime() (MT4, MT5) teşekkürler fxsaber 2017.04.07 06:24 #7403 Alexey Volchanskiy : Bunun eski bir gönderi olduğunu biliyorum, ama az önce bir şarapnel bana çarptı. Bu parça doğru değil, forex komisyonu sıfır olabilir yanlış olan nedir? Klimenko_a_e 2017.04.10 00:08 #7404 MQL5'te kopya oluşturucu ile ilgili sorun Kopya oluşturucudaki this.arr dinamik dizisi , hata ayıklayıcıda tek boyutlu görünüyor. Sonuç olarak ob2.arr boyutu çıktıda 0'dır. Niye ya? Aynı parça MQL4'te de düzgün çalışıyor. MT5 düzenleyici Meta Düzenleyici 5.0 1578 MT4 düzenleyici Meta Düzenleyici 5.0 1562 class obj { public : double arr[][ 2 ]; obj(){} obj(obj &o) { ArrayCopy ( this .arr,o.arr); } obj operator =(obj &o) { ArrayCopy ( this .arr,o.arr); return & this ; } }; //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ obj Copy(obj &o) { return o; }; //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ void OnStart () { //--- obj ob1,ob2; ArrayResize (ob1.arr, 3 ); ob2=Copy(ob1); bool stop= true ; } [SERVICE DESK] Zamanlayıcıda kıdemli Hatalar, hatalar, sorular MQL4 ve MQL5 ile fxsaber 2017.04.10 06:39 #7405 Klimenko_a_e : Sonuç olarak, ob2.arr boyutu çıktıda 0'dır. Niye ya? obj * Copy(obj &o) { return & o; }; Aksi takdirde, yeni bir nesne oluşturursunuz. void operator =(obj &o) { ArrayCopy ( this .arr,o.arr); return ; // &this; } Aksi takdirde, çok fazla var. Kodunuzun MQL4'te doğru çalıştığından şüpheliyim. Akinak 2017.04.10 15:10 #7406 İyi günler Lütfen bekleyen bir siparişi nasıl açacağımı söyleyin ??? Açık satın alma ile bekleyen bir sipariş açmam gerekirse döngü nasıl durdurulur??? Depozito bitene kadar paketi benim için açıyor! Şimdiden teşekkürler!!! Yeni başlayanlardan sorular MQL4 Sormak! [ARŞİV] Forumu kirletmemek için Vladislav Andruschenko 2017.04.10 15:12 #7407 Akinak : İyi günler Lütfen bekleyen bir siparişi nasıl açacağımı söyleyin ??? Açık bir satın alma ile bekleyen bir sipariş açmam gerekirse döngü nasıl durdurulur??? Depozito bitene kadar paketi benim için açıyor! Şimdiden teşekkürler!!! İlk önce "kim olduğunu" bulmalısın. Akinak 2017.04.10 16:18 #7408 Vladislav Andruschenko : İlk önce "kim olduğunu" bulmalısın. Vladislav Andruschenko : İlk önce "kim olduğunu" bulmalısın. for(int i=0; i<OrdersTotal();i++) { if( OrderSelect (i,SELECT_BY_POS)) if(OrderSymbol()==Symbol()) if(OrderMagicNumber()==Büyü) eğer(b>0) { int tak=OrderSend(Symbol(),OP_SELLSTOP,Lots_work,SOPRase,Slip,0,0,"",Magic,0,clrRed); eğer(al>0) Print("SELLSTOP Tamam"); başka Print("SELLSTOP Hatası"); } eğer(ler>0) { OrderSend(Symbol(),OP_BUYSTOP,Lots_work,BOPrase,Slip,0,0,"",Magic,0,clrBlue); if(tik>0) Print("SATIN AL Tamam"); başka Print("SATIN ALMA Hatası"); } } Questions from Beginners MQL5 [UYARI, KONU KAPALI!] Forumu Forumu kirletmemek için herhangi Vladislav Andruschenko 2017.04.10 19:45 #7409 peki, bir döngüde şunu yapın: pozisyon aç - bir emir aç, pozisyon sayısı eklenir, döngü tekrar eder - sonsuza kadar. int OrderSTotal= OrdersTotal (); for ( int i= 0 ; i<OrderSTotal;i++) { if ( OrderSelect (i, SELECT_BY_POS )) if ( OrderSymbol ()== Symbol ()) if ( OrderMagicNumber ()==Magic) { if (b> 0 ) { int tak= OrderSend ( Symbol (), OP_SELLSTOP ,Lots_work,SOPrase,Slip, 0 , 0 , "" ,Magic, 0 , clrRed ); if (tak> 0 ) Print ( "SELLSTOP Ok" ); else Print ( "SELLSTOP Error" ); } if (s> 0 ) { int tik= OrderSend ( Symbol (), OP_BUYSTOP ,Lots_work,BOPrase,Slip, 0 , 0 , "" ,Magic, 0 , clrBlue ); if (tik> 0 ) Print ( "BUYSTOP Ok" ); else Print ( "BUYSTOP Error" ); } } } //+------------------------------------------------------------------+ b ve s'nin ne olduğunu bilmek gerekiyor Klimenko_a_e 2017.04.10 19:58 #7410 fxsaber : Aksi takdirde, yeni bir nesne oluşturursunuz. Aksi takdirde, çok fazla var. Kodunuzun MQL4'te doğru çalıştığından şüpheliyim. Gerçek kodda, bir işlev bir nesne döndürür. Bence kopya oluşturucu bu durumda geçici bir kopya oluşturmalıdır. Kod, MQL5 build 1545'te de düzgün çalışıyor. Yeni yapıda, kopya oluşturucu tek boyutlu bir diziyi bile yeniden boyutlandıramaz: hata 4007. Bana göre bu doğru değil. Hatalar, hatalar, sorular MQL5'te OOP hakkında sorular Mql5 dilinin özellikleri, incelikleri 1...734735736737738739740741742743744745746747748...1503 Yeni yorum
Sapıklık olmadan sordun. Ve eğer onlarla
{
double Commission = :: PositionGetDouble ( POSITION_COMMISSION );
// На случай, если POSITION_COMMISSION не работает
if (Commission == 0 )
{
const ulong Ticket = MT4ORDERS::GetPositionDealIn();
if (Ticket > 0 )
{
const double LotsIn = :: HistoryDealGetDouble (Ticket, DEAL_VOLUME );
if (LotsIn > 0 )
Commission = :: HistoryDealGetDouble (Ticket, DEAL_COMMISSION ) * :: PositionGetDouble ( POSITION_VOLUME ) / LotsIn;
}
}
return (Commission);
}
Bunun eski bir gönderi olduğunu biliyorum, ama az önce bir şarapnel bana çarptı.
Bu parça doğru değil, forex komisyonu sıfır olabilir
ObjectGetValueByShift() (yalnızca MT4) , ObjectGetValueByTime() (MT4, MT5)
teşekkürler
Bunun eski bir gönderi olduğunu biliyorum, ama az önce bir şarapnel bana çarptı.
Bu parça doğru değil, forex komisyonu sıfır olabilir
yanlış olan nedir?
MQL5'te kopya oluşturucu ile ilgili sorun
Kopya oluşturucudaki this.arr dinamik dizisi , hata ayıklayıcıda tek boyutlu görünüyor.
Sonuç olarak ob2.arr boyutu çıktıda 0'dır.
Niye ya?
Aynı parça MQL4'te de düzgün çalışıyor.
MT5 düzenleyici
Meta Düzenleyici 5.0 1578
MT4 düzenleyici
Meta Düzenleyici 5.0 1562
Sonuç olarak, ob2.arr boyutu çıktıda 0'dır.
Niye ya?
Aksi takdirde, yeni bir nesne oluşturursunuz.
Aksi takdirde, çok fazla var.
Kodunuzun MQL4'te doğru çalıştığından şüpheliyim.
Depozito bitene kadar paketi benim için açıyor!
Şimdiden teşekkürler!!!
Depozito bitene kadar paketi benim için açıyor!
Şimdiden teşekkürler!!!
İlk önce "kim olduğunu" bulmalısın.
İlk önce "kim olduğunu" bulmalısın.
İlk önce "kim olduğunu" bulmalısın.
}
peki, bir döngüde şunu yapın:
pozisyon aç - bir emir aç, pozisyon sayısı eklenir, döngü tekrar eder - sonsuza kadar.
b ve s'nin ne olduğunu bilmek gerekiyor
Aksi takdirde, yeni bir nesne oluşturursunuz.
Aksi takdirde, çok fazla var.
Kodunuzun MQL4'te doğru çalıştığından şüpheliyim.
Gerçek kodda, bir işlev bir nesne döndürür.
Bence kopya oluşturucu bu durumda geçici bir kopya oluşturmalıdır.
Kod, MQL5 build 1545'te de düzgün çalışıyor.
Yeni yapıda, kopya oluşturucu tek boyutlu bir diziyi bile yeniden boyutlandıramaz: hata 4007.
Bana göre bu doğru değil.