Проверка минимального стопа в советниках, публикуемых в маркете. - страница 9

 
Artyom Trishkin:
Печально, но лишь наличие ошибки, даже обрабатываемой в дальнейшем, уже является красной тряпкой модераторам маркета. И даже объяснение дальнейшей логики, что советник обрабатывает ответы сервера, порой натыкаются на один ответ: "ошибок быть не должно". И не важно, что они обрабатываются далее, и являются частью "общения" советника с сервером.

Продукты маркета проверяют не программисты и не тестировщики.

Надо просто принять это, как факт, и добавить несколько тупых проверок в код, чтоб пройти формальную проверку модератора. 

 
Andrey Khatimlianskii:

Надо просто принять это, как факт, и добавить несколько тупых проверок в код, чтоб пройти формальную проверку модератора. 

и получить в дальнейшем проблемы на реальном счете
 
Andrey Khatimlianskii:

Продукты маркета проверяют не программисты и не тестировщики.

Надо просто принять это, как факт, и добавить несколько тупых проверок в код, чтоб пройти формальную проверку модератора. 

Нарывался на советники в маркете, которые в тестере валятся через сутки тестирования с ошибкой деления на ноль. И это дерьмо проходит проверки на маркет. Что говорит о том, что на деле проверки начинаются и заканчиваются тем, чтобы советник хотя бы стартанул.

А вот авторов подобного дерьма я лично презираю. Я такого никогда не выложу.

 
Alexey Volchanskiy:

Нарывался на советники в маркете, которые в тестере валятся через сутки тестирования с ошибкой деления на ноль. И это дерьмо проходит проверки на маркет. Что говорит о том, что на деле проверки начинаются и заканчиваются тем, чтобы советник хотя бы стартанул.

А вот авторов подобного дерьма я лично презираю. Я такого никогда не выложу.

тут размещенный код:

   double ask=SymbolInfoDouble(symToWorkmodify,SYMBOL_ASK);
   double bid=SymbolInfoDouble(symToWorkmodify,SYMBOL_BID);
   double point=SymbolInfoDouble(symToWorkmodify,SYMBOL_POINT);
   int spread=(ask-bid)/point;

тоже не подходит для маркета, ведь говорят что бывает Форекс-брокеры с нулевым спредом, значит получаем ноль. Ну а ноль умноженная на X дает ноль, в этом случае "2 * spread = stopLevel = 0".

для избежания подобного рода ошибки: 

stopLevel=MathMax(2.0*spread,1.0);
 
Vladislav Andruschenko:

нда, это только для маркета - а вот универсальности тут нет для люого брокера

получается чтобы в маркете приняли - нужно сделать мин стоп на 3 спреда,

но по сути это неправильно - так как если у брокера минстоп = 1 спреду - то пользователь не сможет поставить меньше 3 спредов.

Засада.  

Маркет тестирует советники с параметрами по умолчанию. Это из переписки с манагерами маркета.

Соответственно можно ввести внешнюю переменную, даже можно типа double, на которую умножать размер спреда и по умолчанию поставить значение 3.

 
Alexey Viktorov:

Маркет тестирует советники с параметрами по умолчанию. Это из переписки с манагерами маркета.

Соответственно можно ввести внешнюю переменную, даже можно типа double, на которую умножать размер спреда и по умолчанию поставить значение 3.

Нет. Маркет тестирует с разными параметрами,  в том числе и ЗАСАДНЫМИ параметры, по типу стоплосс и тейкпрофит = 1. 

 

вот посмотрите в фрилансе последняя работа :-)

При тестировании эксперта были получены сообщения об ошибках. Необходимо  протестировать советника в разных режимах: неподходящий для торговли символ недостаток средств на счете нехватка истории символы с 4 и 5 знаками после запятой различные режимы моделирования тиков Также проверяйте на корректность значения всех параметров в торговых функциях.

 

Т.е. сразу видно что человек не знает язык программирования и пытается продать продукт в маркете.  

 
Лучше уже в коде предусмотреть ограничения ниже/выше которых нельзя менять настройку продукта. Хотя заранее все не предусмотреть как пользователь настроит работу продукта. У меня был случай. Сначала юзер купивший мой продукт написал предложения добавить некоторые возможности к индикатору. Я добавил. Потом он начал меня терроризировать, что индикатор  работает неправильно. Проверял несколько раз гонял в тестере и в реальном времени несколько часов сидел за монитором наблюдал за работой индикатора ни чего неправильного не обнаружил. Потом выяснил, путем переписки и наводящих вопросов, что этот пользователь использует индикатор, который ищет на графике паттерн "внутренний бар", на минутном временном интервале!!!  Те кто знают как работает этот паттерн даже в голову не придет торговать по паттернам "внутренний бар" на минутном графике.
 
Что мешает вместо гаданий "примут или не примут" самостоятельно запустить тестер стратегий. В тестере стратегий выбрать оптимизацию и полный перебор входных параметров параметров. После тестирования останется только проверить журнал.
 
Vladislav Andruschenko:

вот посмотрите в фрилансе последняя работа :-)

 

Это цитата из переписки с модератором маркета? А где упоминание об ошибке 130?
 
Karputov Vladimir:
Что мешает вместо гаданий "примут или не примут" самостоятельно запустить тестер стратегий. В тестере стратегий выбрать оптимизацию и полный перебор входных параметров параметров. После тестирования останется только проверить журнал.

не все так просто на самом деле, некоторые ситуации нереально проверить в тестере. я сталкивался с таким. например советника К...... - не могли принять. 

там идея была открывать отложку после срабатывания позиции - простой алгоритм маятник, но нет его не принимали,

из-за ошибки нехватка средств.

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

в общем бывают не стандартные ситуации.

Причина обращения: