Обсуждение статьи "Какие проверки должен пройти торговый робот перед публикацией в Маркете" - страница 23

 
я не пойму почему не пропускает рабочий робот я перевел все комментарии на английский язык так как она выдавала ошибку и после всего этого выдала такого рода ошибку 

test on EURUSD,H1 (netting) 2022.02.01 09:36:20 failed instant sell 1 EURUSD at 0.00000 sl: 1.12832 tp: 1.12078 [Invalid price] 2022.02.01 09:37:40 failed instant sell 1 EURUSD at 0.00000 sl: 1.12837 tp: 1.12081 [Invalid price] 2022.02.01 09:37:59 failed instant sell 1 EURUSD at 0.00000 sl: 1.12836 tp: 1.12080 [Invalid price] 2022.02.01 09:38:00 failed instant sell 1 EURUSD at 0.00000 sl: 1.12837 tp: 1.12081 [Invalid price] 2022.02.01 09:38:20 failed instant sell 1 EURUSD at 0.00000 sl: 1.12836 tp: 1.12080 [Invalid price] 2022.02.01 09:41:40 failed instant sell 1 EURUSD at 0.00000 sl: 1.12847 tp: 1.12057 [Invalid price] 2022.02.01 09:41:59 failed instant sell 1 EURUSD at 0.00000 sl: 1.12847 tp: 1.12057 [Invalid price] 2022.02.01 09:42:00 failed instant sell 1 EURUSD at 0.00000 sl: 1.12847 tp: 1.12057 [Invalid price] 2022.02.01 09:44:40 failed instant sell 1 EURUSD at 0.00000 sl: 1.12850 tp: 1.12060 [Invalid price] 2022.02.01 09:44:59 failed instant sell 1 EURUSD at 0.00000 sl: 1.12847 tp: 1.12057 [Invalid price] 2022.02.01 09:45:00 failed instant sell 1 EURUSD at 0.00000 sl: 1.12848 tp: 1.12058 [Invalid price] 2022.02.01 17:43:40 failed instant sell 1 EURUSD at 0.00000 sl: 1.13007 tp: 1.11921 [Invalid price] 2022.02.01 17:44:40 failed instant sell 1 EURUSD at 0.00000 sl: 1.13014 tp: 1.11928 [Invalid price] 2022.02.01 17:44:59 failed instant sell 1 EURUSD at 0.00000 sl: 1.13014 tp: 1.11928 [Invalid price] 2022.02.01 17:45:00 failed instant sell 1 EURUSD at 0.00000 sl: 1.13016 tp: 1.11930 [Invalid price] 2022.02.01 17:45:40 failed instant sell 1 EURUSD at 0.00000 sl: 1.13000 tp: 1.11908 [Invalid price] 2022.02.01 17:45:59 failed instant sell 1 EURUSD at 0.00000 sl: 1.13003 tp: 1.11911 [Invalid price] 2022.02.01 17:46:00 failed instant sell 1 EURUSD at 0.00000 sl: 1.13005 tp: 1.11913 [Invalid price] 2022.02.01 17:46:20 failed instant sell 1 EURUSD at 0.00000 sl: 1.13000 tp: 1.11908 [Invalid price] 2022.02.01 17:59:40 failed instant sell 1 EURUSD at 0.00000 sl: 1.13003 tp: 1.11911 [Invalid price] 2022.02.01 17:59:59 failed instant sell 1 EURUSD at 0.00000 sl: 1.13020 tp: 1.11928 [Invalid price] there are no trading operations

не может быть что торговый робот не может открыть сделку так как я сам лично пользуюсь этим роботом а тут такое!!!
 

Пожалуйста, помогите мне, я не понимаю, что заставляет мою валидацию отображаться таким образом, если я пойму проблему, я буду знать, где исправить мой код. Спасибо

Валидатор показывает ошибку

 
Mean Pichponreay #:

Пожалуйста, помогите мне, я не понимаю, что заставляет мою валидацию отображаться таким образом, если я пойму проблему, я буду знать, где исправить мой код. Спасибо


Здравствуйте, вам нужно проверить позиции на Margin Stop Out и закрыть позиции до Stop Out.

ACCOUNT_MARGIN_SO_SO

 
Nauris Zukas #:

Здравствуйте, вам необходимо проверить позиции на наличие Margin Stop Out и закрыть позиции до Stop Out.

ACCOUNT_MARGIN_SO_SO

Большое спасибо, сэр, сейчас попробую исправить.

 
Я столкнулся с той же проблемой. Что бы я ни пробовал, ничего не помогает. Я даже реализовал механизм имитации торговли в своем советнике (EA), но это не решило проблему. Надеюсь, кто-нибудь поможет нам разобраться, как обойти эту ошибку и при этом сохранить торговую стратегию советника.
 

Мне очень нужна помощь - я застрял здесь с ошибкой "нет торговой операции". Я был бы признателен за любой совет или помощь в том, как исправить мой код, чтобы я мог решить эту проблему. Я пробовал использовать несколько ярлыков, но независимо от того, что я делаю, я продолжаю сталкиваться с этой ошибкой.





Файлы:
Capture.PNG  20 kb
 

Здравствуйте, я пытаюсь загрузить советник, но всегда получаю одну и ту же ошибку.

test on EURUSD,H1 (hedging)
 2022.02.03 15:40:40   failed modify #11 buy 0.55 EURUSD sl: 1.12910, tp: 1.13310 -> sl: 1.13260, tp: 1.13310 [Неверные стопы]
 2022.02.03 15:40:59   failed modify #11 buy 0.55 EURUSD sl: 1.12910, tp: 1.13310 -> sl: 1.13225, tp: 1.13310 [Неверные стопы]
 2022.02.03 15:41:00   failed modify #11 buy 0.55 EURUSD sl: 1.12910, tp: 1.13310 -> sl: 1.13225, tp: 1.13310 [Неверные стопы]
 2022.02.03 15:41:20   failed modify #11 buy 0.55 EURUSD sl: 1.12910, tp: 1.13310 -> sl: 1.13240, tp: 1.13310 [Неверные стопы]
 2022.02.03 15:41:40   failed modify #11 buy 0.55 EURUSD sl: 1.12910, tp: 1.13310 -> sl: 1.13155, tp: 1.13310 [Неверные стопы]
 2022.02.03 15:41:59   failed modify #11 buy 0.55 EURUSD sl: 1.12910, tp: 1.13310 -> sl: 1.13210, tp: 1.13310 [Неверные стопы]
 2022.02.03 15:42:00   failed modify #11 buy 0.55 EURUSD sl: 1.12910, tp: 1.13310 -> sl: 1.13210, tp: 1.13310 [Неверные стопы]
 2022.02.03 15:42:20   failed modify #11 buy 0.55 EURUSD sl: 1.12910, tp: 1.13310 -> sl: 1.13210, tp: 1.13310 [Неверные стопы]
 2022.02.08 09:13:40   failed modify #21 sell 0.55 EURUSD sl: 1.14345, tp: 1.13945 -> sl: 1.14035, tp: 1.13945 [Invalid stops]
 2022.02.08 09:13:59   failed modify #21 sell 0.55 EURUSD sl: 1.14345, tp: 1.13945 -> sl: 1.14055, tp: 1.13945 [Invalid stops]
 2022.02.08 09:14:00   failed modify #21 sell 0.55 EURUSD sl: 1.14345, tp: 1.13945 -> sl: 1.14055, tp: 1.13945 [Invalid stops]
 2022.02.08 09:14:20   failed modify #21 sell 0.55 EURUSD sl: 1.14345, tp: 1.13945 -> sl: 1.14065, tp: 1.13945 [Invalid stops]
 2022.02.08 09:14:40   failed modify #21 sell 0.55 EURUSD sl: 1.14345, tp: 1.13945 -> sl: 1.14030, tp: 1.13945 [Invalid stops]
 2022.02.08 09:14:59   failed modify #21 sell 0.55 EURUSD sl: 1.14345, tp: 1.13945 -> sl: 1.14035, tp: 1.13945 [Invalid stops]
 2022.02.08 09:15:00   failed modify #21 sell 0.55 EURUSD sl: 1.14345, tp: 1.13945 -> sl: 1.14035, tp: 1.13945 [Invalid stops]
 2022.02.08 09:15:20   failed modify #21 sell 0.55 EURUSD sl: 1.14345, tp: 1.13945 -> sl: 1.14040, tp: 1.13945 [Invalid stops]
 2022.02.08 09:15:40   failed modify #21 sell 0.55 EURUSD sl: 1.14345, tp: 1.13945 -> sl: 1.13985, tp: 1.13945 [Invalid stops]
 2022.02.08 09:15:59   failed modify #21 sell 0.55 EURUSD sl: 1.14345, tp: 1.13945 -> sl: 1.14025, tp: 1.13945 [Invalid stops]
 2022.02.08 09:16:00   failed modify #21 sell 0.55 EURUSD sl: 1.14345, tp: 1.13945 -> sl: 1.14025, tp: 1.13945 [Invalid stops]
 2022.02.08 09:16:20   failed modify #21 sell 0.55 EURUSD sl: 1.14345, tp: 1.13945 -> sl: 1.14025, tp: 1.13945 [Invalid stops]
 2022.02.08 09:16:40   failed modify #21 sell 0.55 EURUSD sl: 1.14345, tp: 1.13945 -> sl: 1.14050, tp: 1.13945 [Invalid stops]
strategy tester report 100 total trades

Я запускаю тот же тест локально, но не получаю никаких ошибок. Что может быть причиной этих ошибок?

2025.02.01 11:34:52.756 2022.02.03 15:40:26   Ticket #4# 
2025.02.01 11:34:52.756 2022.02.03 15:40:26   new stopLoss: 1.1313000000000002
2025.02.01 11:34:52.756 2022.02.03 15:40:26   position modified [#4 купить 0.55 EURUSD 1.13081 sl: 1.13130 tp: 1.13280]
2025.02.01 11:34:52.758 2022.02.03 15:40:26   CTrade::OrderSend: modify position #4 EURUSD (sl: 1.13130, tp: 1.13280) [done]
2025.02.01 11:34:52.759 2022.02.03 15:40:27   Ticket #4# 
2025.02.01 11:34:52.759 2022.02.03 15:40:27   new stopLoss: 1.1314000000000002
2025.02.01 11:34:52.759 2022.02.03 15:40:27   position modified [#4 купить 0.55 EURUSD 1.13081 sl: 1.13140 tp: 1.13280]
2025.02.01 11:34:52.761 2022.02.03 15:40:27   CTrade::OrderSend: modify position #4 EURUSD (sl: 1.13140, tp: 1.13280) [done]
2025.02.01 11:34:52.763 2022.02.03 15:40:28   Ticket #4# 
2025.02.01 11:34:52.763 2022.02.03 15:40:28   new stopLoss: 1.13145
2025.02.01 11:34:52.763 2022.02.03 15:40:28   position modified [#4 купить 0.55 EURUSD 1.13081 sl: 1.13145 tp: 1.13280]
2025.02.01 11:34:52.765 2022.02.03 15:40:28   CTrade::OrderSend: modify position #4 EURUSD (sl: 1.13145, tp: 1.13280) [done]
2025.02.01 11:34:52.765 2022.02.03 15:40:28   Ticket #4# 
2025.02.01 11:34:52.765 2022.02.03 15:40:28   new stopLoss: 1.13155
2025.02.01 11:34:52.767 2022.02.03 15:40:28   position modified [#4 купить 0.55 EURUSD 1.13081 sl: 1.13155 tp: 1.13280]
2025.02.01 11:34:52.769 2022.02.03 15:40:28   CTrade::OrderSend: modify position #4 EURUSD (sl: 1.13155, tp: 1.13280) [done]
2025.02.01 11:34:52.770 2022.02.03 15:40:29   Ticket #4# 
2025.02.01 11:34:52.770 2022.02.03 15:40:29   new stopLoss: 1.1316000000000002
2025.02.01 11:34:52.770 2022.02.03 15:40:29   position modified [#4 купить 0.55 EURUSD 1.13081 sl: 1.13160 tp: 1.13280]
2025.02.01 11:34:52.772 2022.02.03 15:40:29   CTrade::OrderSend: modify position #4 EURUSD (sl: 1.13160, tp: 1.13280) [done]
 
Francisco Jesus Alonso Martin #:

Здравствуйте, я пытаюсь загрузить советника, но всегда получаю одну и ту же ошибку

Я запускаю тот же тест локально, но не получаю никаких ошибок. Что может быть причиной этих ошибок?

Хорошо, я решил эту проблему, мне нужно было проверить уровни стопов по отношению к цене.

 

Здравствуйте, снова я.

У меня осталась только одна ошибка, но я не могу найти ее решение.

test on XAUUSD,D1 (hedging)
 2022.07.12 04:30:40   current account state: Balance: 1126.50, Credit: 0.00, Commission: 0.00, Accumulated: 0.00, Assets: 0.00, Liabilities: 0.00, Equity 1126.50, Margin: 0.00, FreeMargin: 1126.50
 2022.07.12 04:30:40   calculated account state: Assets: 0.00, Liabilities: 0.00, Equity 1126.50, Margin: 1132.76, FreeMargin: -6.26
 2022.07.12 04:30:40   not enough money for order [#7 buy stop 0.65 XAUUSD на 1742.70]
strategy tester report 13 total trades

Я всегда проверяю маржу перед тем, как совершить покупку или продажу с помощью этого метода:

bool checkMoneyForTrade(string symb,double lots,ENUM_ORDER_TYPE type) {
//--- Получение цены открытия
    MqlTick mqltick;
    SymbolInfoTick(symb,mqltick);
    double price = mqltick.ask;
    if(type == ORDER_TYPE_SELL)
        price = mqltick.bid;
//--- значения требуемой и свободной маржи
    double margin,free_margin = AccountInfoDouble(ACCOUNT_MARGIN_FREE);
    //--- вызов функции проверки
    if(!OrderCalcMargin(type,symb,lots,price,margin)) {
        //--- что-то пошло не так, сообщите об этом и верните false
        Print("Error in ",__FUNCTION__," code=",GetLastError());
        return(false);
    }
    //--- если средств для выполнения операции недостаточно
    if(margin > free_margin || free_margin < 0) {
        //--- сообщите об ошибке и верните false
        Print("Not enough money for ",EnumToString(type)," ",lots," ",symb," Error code=",GetLastError());
        return(false);
    }
//--- проверка успешна
    return(true);
}
 

получил ошибку в процессе проверки, которую я не могу найти, когда я вернулся тест на mqlf5 на эту дату нет ошибки в моем терминале

без ошибок