Hatalar, hatalar, sorular - sayfa 2687

 
Andrey Dik :

burada.

ve matematik hesaplama modu da.

Ayrıca 100 myo sınırı var mı?

 
Andrey Khatimlianskii :

Ayrıca 100 myo sınırı var mı?

fazla

 
Andrey Kaunov :

Genel olarak, komisyoncu inatla sorumu forumdan kaldırır. Üçüncü seferden itibaren kişisel olarak bir tür sapkınlığa cevap verdi:

Aynı zamanda, MT4 terminallerindeki işlev doğru değeri verir.


PS Bir başlıkta benim gönderiyi bıraktılar, ancak cevap veya merhaba yok

https://forum.alpari.com/index.php?/topic/

Aynı komisyoncu ile ticaret yapıyorum. Aynı sorunla karşı karşıya kaldı. SYMBOL_TRADE_MODE özelliğindeki para birimleri ve altın (aynı zamanda endeksler) arasındaki fark.

Para birimleri için SYMBOL_TRADE_MODE = SYMBOL_CALC_MODE_FOREX ve metaller ve endeksler için SYMBOL_TRADE_MODE = SYMBOL_CALC_MODE_CFDLEVERAGE.

SYMBOL_CALC_MODE_CFDLEVERAGE modu için bu broker veya platformun SYMBOL_TRADE_TICK_VALUE_PROFIT ve SYMBOL_TRADE_TICK_VALUE_LOSS özelliklerini doğru şekilde hesaplamadığı görülüyor.

Bu nedenle SYMBOL_CALC_MODE_CFDLEVERAGE modunda sembolleri hesaplamak için ayrıca squat yapmanız gerekir. Formülü belgelerden kullanıyorum

Kar: (close_price - open_price) * Contract_Size*Lots

.

İşte, bu komisyoncunun sahip olduğu, hesap para birimindeki açılış fiyatına, zararı durdur fiyatına ve maksimum zarara göre pozisyon hacmini hesaplayan bir fonksiyon örneği. Alpari düzgün çalışıyor, henüz diğer brokerlerde test etmedim.

 double calcVolume( double sl, double price, double maxLoss){
   ENUM_SYMBOL_CALC_MODE cm = si.TradeCalcMode();       // si - внешняя переменная CSymbolInfo из стандартной библиотеки
   double priceDiff = MathAbs (price - sl); 
   double ticks = priceDiff/si. Point ();         
   double lots;
   string convertSymbol;
   string accountCurrency = AccountInfoString ( ACCOUNT_CURRENCY );
   Print ( "SL ticks: " , ticks);
   switch (cm) {
       case SYMBOL_CALC_MODE_FOREX :      
         // это для валютных пар
         lots = maxLoss / ticks / si.TickValueLoss();
         break ;
       case SYMBOL_CALC_MODE_CFDLEVERAGE : 
         // а эти танцы с бубном для металлов и индексов
         lots = maxLoss / priceDiff / si.ContractSize();
         if (si.CurrencyProfit() != accountCurrency) {
             // валюту прибыли конвертируем в валюту депозита
            convertSymbol = si.CurrencyProfit() + accountCurrency + SymbolSuffix;
             double convert = SymbolInfoDouble (convertSymbol, SYMBOL_BID );
             if (convert != 0 ) {
               Print ( "Convert currency1 to " , convertSymbol, " convert bid: " , convert);            
               lots = lots / convert;
            }
             else {
               convertSymbol = accountCurrency + si.CurrencyProfit() + SymbolSuffix;
               convert = SymbolInfoDouble (convertSymbol, SYMBOL_ASK );
               Print ( "Convert currency2 to " , convertSymbol, " convert ask: " , convert);            
               lots = lots * convert;
            }
         }
         break ;
       default :
         Print ( "ERROR need support calc for: " , EnumToString (cm));
         lots = 0 ;
         break ;
   }
   double floorLots = MathFloor (lots / si.LotsStep()) * si.LotsStep();
   Print ( "raw lots: " , lots, ", floorLots: " , floorLots, " diff: " , NormalizeDouble ( 100 *floorLots/lots, 2 ), "%" );
   return floorLots;
}
 
Alexey Rassvetnyy :

Stop limiti al emirleri ve sat stop limiti emirleri için araç ipucunda kar/zarar yanlış hesaplanıyor.

Beyler, MQ temsilcileri, açıklanan kusur düzeltildi mi? Sonraki sürümlerde düzeltmeler beklemeli miyiz?

Kusurla ilgili orijinal gönderiye bağlantı.

https://www.mql5.com/ru/forum/1111/page2670#comment_15391563

Ошибки, баги, вопросы
Ошибки, баги, вопросы
  • 2020.03.11
  • www.mql5.com
Общее обсуждение: Ошибки, баги, вопросы
 
Andrey Dik :

fazla

Sonra bela.

 
Bunu bir dergiden aldım.
2020.03.29 20:58:28.061 SymbolClone (EURUSD,M1) Unknown runtime error in 'SymbolClone.mq5' (1,1)

Oynamak için Debug'da koşmanız ve kesme noktasına ulaşmanız gerekir. Ardından Terminalde (ME değil) profili değiştirin - SHIFT + F5.

 
Alexey Rassvetnyy :

Aynı komisyoncu ile ticaret yapıyorum. Aynı sorunla karşı karşıya kaldı. SYMBOL_TRADE_MODE özelliğindeki para birimleri ve altın (aynı zamanda endeksler) arasındaki fark.

Para birimleri için SYMBOL_TRADE_MODE = SYMBOL_CALC_MODE_FOREX ve metaller ve endeksler için SYMBOL_TRADE_MODE = SYMBOL_CALC_MODE_CFDLEVERAGE.

SYMBOL_CALC_MODE_CFDLEVERAGE modu için bu broker veya platformun SYMBOL_TRADE_TICK_VALUE_PROFIT ve SYMBOL_TRADE_TICK_VALUE_LOSS özelliklerini doğru şekilde hesaplamadığı görülüyor.

Bu nedenle SYMBOL_CALC_MODE_CFDLEVERAGE modunda sembolleri hesaplamak için ayrıca squat yapmanız gerekir. Formülü belgelerden kullanıyorum

Kar: (close_price - open_price) * Contract_Size*Lots

.

İşte, bu komisyoncunun sahip olduğu, hesap para birimindeki açılış fiyatına, zararı durdur fiyatına ve maksimum zarara göre pozisyon hacmini hesaplayan bir fonksiyon örneği. Alpari düzgün çalışıyor, henüz diğer brokerlerde test etmedim.


Hepsi harika tabii. Ancak standart TICK VALUE işlevini kullanabiliyorsanız ve kullanmanız gerekiyorsa, neden zor yoldan gitmek zorundasınız?

Belki geliştiriciler bu hataya dikkat ederler.

Alexey Rassvetnyy :

Beyler, MQ temsilcileri, açıklanan kusur düzeltildi mi? Sonraki sürümlerde düzeltmeler beklemeli miyiz?

Kusurla ilgili orijinal gönderiye bağlantı.

https://www.mql5.com/ru/forum/1111/page2670#comment_15391563

sorusuna katılıyorum.

İşte orijinal gönderim https://www.mql5.com/ru/forum/351/page4#comment_15429966
Расчет TickValue и прибыли
Расчет TickValue и прибыли
  • 2010.09.26
  • www.mql5.com
На межбанке Equity постоянно меняется, если вы открыли и закрыли позицию с валютой прибыли не равной валюте счета (например, на USD-счете совершили сделку на USDJPY).
 
Andrey Khatimlianskii :

Sonra bela.

bir milisaniye düzeyindeki görevler için, aracıları optimize etmenin bir anlamı yoktur, her şeyi mql'de değil manuel olarak yapmak daha iyidir. bu nedenle kısıtlama her durumda oldukça makul, örtük olması kötü

 
Andrei Trukhanovich :

bir milisaniye düzeyindeki görevler için, aracıları optimize etmenin bir anlamı yoktur, her şeyi mql'de değil manuel olarak yapmak daha iyidir. bu nedenle kısıtlama her durumda oldukça makul, örtük olması kötü

Buluta bağlansanız ve aracı başına 100-500-1000K'lık paketler verseniz bile mi?

Belki, evet, ağ yükü tüm kazanımları mahveder.

 
fxsaber :

mq5 - normal. mq4 - bozuk. TypeToBytes_ExampleScript.mq4'ü buradan alabilirsiniz. Yalnızca uzantı mq5 olarak değiştirilirse derlenir.

2372 - hata düzeltildi, teşekkürler.