To wydaje się być zmorą wszystkich błędów OrderSend. Wydaje mi się, że nie rozumiem, dlaczego cena Stop loss nie oblicza się prawidłowo. Próbowałem go pomnożyć przez 10 itd., Ale zawsze daje ten sam błąd i wydruk.
Błąd: EURGBP, M1: Wprowadź cenę: 0.74660000 Stop Loss: 0.74705000 Take Profit: 0.74600000
Wstawiony kod unieważnia EnterTrade (podwójne ryzyko, int sl, int tp) {RefreshRates (); podwójna SL, TP; int dollarsAtRisk = AccountEquity () * Ryzyko; g_PositionSize = NormalizeDouble ((dollarsAtRisksl), 1); if (g_ConfirmLong == true) {SL = Ask - (sl * Point); TP = Zapytaj (tp * punkt); g_TradeID = Wysłanie zamówienia (Symbol (), OP_BUY, g_PositionSize, Ask, Slippage, NormalizeDouble (SL, cyfry), NormalizeDouble (TP, cyfry), TradeComment, 0, 0, Green); Drukuj (Wprowadź cenę: Zapytaj Stop Loss: SL Take Profit: TP); if (g_TradeID lt; 0) {Drukuj (OrderSend nie powiodło się z błędem #, GetLastError ()); ResetVars (); return (0); } sl i tp są przekazywane przez liczby całkowite od 45 do 60.