Hatalar, hatalar, sorular - sayfa 855

 
gdtt :

İşte tasarım:

Bence yasaklanmalı çünkü aynı veri türünden olsa da, başka bir nesnenin özel bir üyesine doğrudan erişim yapılır.

Sizce yasaklanmalı mı? Kullanmayın.

private: element erişim belirtecinden sonra (ve aşağıdaki erişim belirtecinden önce) bildirilen bir sınıfın tüm üyeleri, yalnızca o sınıfın üye işlevlerinde kullanılabilir.

Belgeler açıkça erişim hakkında bilgi verir ve nesneler hakkında hiçbir şey söylemez (yalnızca sınıflar).

Bu arada, kopya yapıcılar tam da böyle bir etkiye dayanmaktadır.

 
stringo :

Sizce yasaklanmalı mı? Kullanmayın.

Belgeler açıkça erişim hakkında bilgi verir ve nesneler hakkında hiçbir şey söylemez (yalnızca sınıflar).

Bu arada, kopya yapıcılar tam da böyle bir etkiye dayanmaktadır.

tamam anladım, teşekkürler
 
Alex5757000 : Bekleyen bir sipariş için önceden çağrılan OrderCalcMargin() işlevinin 0.0?

Evet, durumun açıklamasına bakılırsa, OrderCalcMargin() işlevi bekleyen siparişler için "0.0" değerini döndürür. Bu, bekleyen emirler vermek için herhangi bir marj gerekmediği anlamına gelir.

Bekleyen bir emir tetiklendiğinde hangi marjın gerekli olacağını tahmin etmeniz gerekiyorsa, ilk parametre olarak piyasa emirlerinden birini değiştirin.

 

Bu nedenle, işlevler kitaplığa atıldıktan sonra "EX5 yükleme başarısız" hatası

 #import "GetPriceBy.ex5"
double GetHighByTime( datetime Time);
double GetLowByTime( datetime Time);
#import

hata nedir?

------------------------------

Sorunun fonksiyonların kendisinde olup olmadığını kontrol etmeye karar verdim. Tüm kitaplık işlevlerinin gövdeleri yalnızca "return(1);" öğesinden oluşsa bile hala bir hata

yardım örneğindeki gibi içe aktarın

 #import "user32.dll"
int     MessageBoxW( uint hWnd, string lpText, string lpCaption, uint uType);
#import "stdlib.ex5"
string ErrorDescription( int error_code);
int     RGB( int red_value, int green_value, int blue_value);
bool    CompareDoubles( double number1, double number2);
string DoubleToStrMorePrecision( double number, int precision);
string IntegerToHexString( int integer_number);
#import "ExpertSample.dll"
int     GetIntValue( int );
double GetDoubleValue( double );
string GetStringValue( string );
double GetArrayItemValue( double &arr[], int , int );
bool    SetArrayItemValue( double &arr[], int , int , double );
double GetRatesItemValue( double &rates[][ 6 ], int , int , int );
#import
 
FiftyStars :

Bu nedenle, işlevler kitaplığa atıldıktan sonra "EX5 yükleme başarısız" hatası

Kitaplıkta dışa aktarılabilir olarak bildirilen işlevler var mı?
 
alexvd :
Kitaplıkta dışa aktarılabilir olarak bildirilen işlevler var mı?
duyurdum, ama sorunu çoktan çözdüm - bilgisayarı yeni başlattım xD görünüşe göre bir aylık sürekli çalışma kendini hissettirdi ... ve birçok yerde sorunlar ortaya çıkmaya başladı bile
 
Söyleyin bana, işte istek yapım, prensipte başka ne eksik?
  
 
 MqlTick last_tick; SymbolInfoTick ( Symbol (),last_tick);
 
   MqlTradeRequest request={ 0 };
       MqlTradeResult result={ 0 };
      
 
  {
    request.     action= TRADE_ACTION_DEAL ;           // Тип выполняемого действия
    request.     price=last_tick.bid;
    request.                        volume= 1 ;           // Запрашиваемый объем сделки в лотах     
    request.     type= ORDER_TYPE_SELL ;     // Тип ордера
    request.     type_filling = ORDER_FILLING_RETURN ;          
    
   }
   
   OrderSend (request,result); 
  
  
   int Error= GetLastError (); ResetLastError ();
         printf ( "Error %i " ,Error);
      
        

2012.10.10 19:22:29 para yatırma (EURUSD,M1) Hata 4756 ERR_TRADE_SEND_FAILED
4756
Ticaret isteği gönderilemedi

Tabii ki, özür dilerim, neden minimum bilgi ile geçinmek imkansız, örneğin, bir emir değil de hemen bir pozisyon açarsam, sonuçta fiyat belirtilemez? Stop-kar yoksa, hayır ve hayır? Belki onları daha sonra bir robotla koymak isterim.. Bir takas talebi için bu kadar kritik olan hangi alan eksik? Ya bunda ne var?

Ve bu - ayrıca atlanabilir mi? type_filling. Açıklanan bir şey var, sipariş tam hacimde yürütülemeyebilir gibi.. Nasıl yani? Genel olarak, çok iyi sürmedim .. Tamam

Ve orada görülebilir, kritik request.symbol=_Symbol; Robotun genel olarak aşikar olacağı çizelgedeki pozisyonun teslimini düşündüm..

 
LR Korelasyonunu optimizasyon sonucu parametresi olarak nasıl ayarlayacağımı söyle (Custom max)?
 
Vacuum :
LR Korelasyonunu optimizasyon sonucu parametresi olarak nasıl ayarlayacağımı söyle (Custom max)?

İlk olarak, LR Korelasyonu hesaplanmalıdır. Bu, bu kütüphanede yapılır https://www.mql5.com/ru/code/1081

Ve sonra bu değeri OnTester aracılığıyla döndürün, burada https://www.mql5.com/ru/articles/286

CTradeStatistics
CTradeStatistics
  • oylar: 8
  • 2012.09.13
  • Andrey Voytenko
  • www.mql5.com
Класс для расчета показателей из перечисления ENUM_STATISTICS
 
Dimka-novitsek :
Söyleyin bana, işte istek yapım, prensipte başka ne eksik?

2012.10.10 19:22:29 para yatırma (EURUSD,M1) Hata 4756 ERR_TRADE_SEND_FAILED
4756
Ticaret isteği gönderilemedi

Tabii ki, özür dilerim, neden minimum bilgi ile geçinmek imkansız, örneğin, bir emir değil de hemen bir pozisyon açarsam, sonuçta fiyat belirtilemez? Stop-kar yoksa, hayır ve hayır? Belki onları daha sonra bir robotla koymak isterim.. Bir takas talebi için bu kadar kritik olan hangi alan eksik? Ya bunda ne var?

Ve bu - ayrıca atlanabilir mi? type_filling. Açıklanan bir şey var, sipariş tam hacimde yürütülemeyebilir gibi.. Nasıl yani? Genel olarak, çok iyi sürmedim .. Tamam

Ve orada görülebilir, kritik request.symbol=_Symbol; Robotun genel olarak aşikar olacağı çizelgedeki pozisyonun teslimini düşündüm..

Standart kitaplığı kullanmanızı öneririm:

 #include <Trade\Trade.mqh>
CTrade            trade;
MqlTick            last_tick;
double Lot= 0.01 ;
string main_comment= "" ;
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick ()
  {
//--- тип позиции
   bool Type;
//----------------------------------+
//--- если покупаем
   Type= true ;                         
//--- если продаём     
   Type= false ;
//----------------------------------+
   if (Type)
     {
       SymbolInfoTick ( _Symbol ,last_tick);
       double price=last_tick.ask;
      trade.PositionOpen( _Symbol , ORDER_TYPE_BUY , NormalizeDouble (Lot, 2 ),price, 0 , 0 ,main_comment);
     }
   else
     {
       SymbolInfoTick ( _Symbol ,last_tick);
       double price=last_tick.bid;
      trade.PositionOpen( _Symbol , ORDER_TYPE_SELL , NormalizeDouble (Lot, 2 ),price, 0 , 0 ,main_comment);
     }

  }