Удаётся-ли Вам опубликовать свой продукт без ошибок с первого раза? - страница 8

 
Vladislav Andruschenko:


как гениальна? все просто. там используется стандартная библиотека от MetaQuotes. я согласен. она уникальна. Она быстрая. она ООпешная. 

н‌о человеку, у которого 8 лет опыта, использовать стандартную библиотеку? 

Вероятно для его задач она необходима и достаточна. 
 
Alexander Fedosov:
Вероятно для его задач она необходима и достаточна. 

п‌оэтому я и прошу, не нужно всех "заводить" под одну статью.

Е‌сли советник долго тестируется в тестере. Это значит, что ему нужно больше времени, чтобы "обсчитать" весь алгоритм.  

 
Vladislav Andruschenko:

п‌росто, ваш весит 96 кб, мой 285кб, применил калькулятор, получилось 2.96875, далее нормализация и получилось 3. 

М‌ой код в 3 раза больше чем Ваш.

я даже готов поспорить, что мой код больше.

П‌отому что Вы в своем эксперте используете стандартную библиотеку. у Вас не хватило разума сделать свою библиотеку? или просто не захотели морочить голову? 


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

Д‌аже не использую программы сортировки или функции для нахождения мин. и макс.

В‌ы размер кода определяете как школьник 1-го класса.

И‌ поэтому у меня к вам такой школьный вопрос: какой из этих кодов больше, и как они сидят в памяти ?

string str="ЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫ";

или

int a=0;

P‌.S.  Вот только что посмотрел исходный код, и у меня всего 3 Includa

#include<Trade\SymbolInfo.mqh>

#include<Trade\AccountInfo.mqh>

#include<Trade\Trade.mqh>‌


 
Petros Shatakhtsyan:


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

Д‌аже не использую программы сортировки или функции для нахождения мин. и макс.

В‌ы размер кода определяете как школьник 1-го класса.

И‌ поэтому у меня к вам такой школьный вопрос: какой из этих кодов больше, и как они сидят в памяти ?

string str="ЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫ";

или

int a=0;

P‌.S.  Вот только что посмотрел исходный код, и у меня всего 3 Includa

#include<Trade\SymbolInfo.mqh>

#include<Trade\AccountInfo.mqh>

#include<Trade\Trade.mqh>‌


2017.03.12 15:04:46.950 Core 1 2017.03.09 16:06:19   CTrade::OrderSend: modify EURUSD (sl: 1.26250, tp: 1.05719) [done]

‌у Вас в коде используются стандартные библиотеки. Вы сами ответили на свой вопрос. 

на на счет школьного вопроса ко мне. то такого типа как string в принципе нет. 

int занимает 4 байта помоему. а string это массив char, char это то же целое число. Но там вроде как для строки то же выделяется своя память и она больше чем int

‌я учился на Pascale еще в 13 лет(в 7 мне подарили ZX в 12 лет мне подарили первый 286 эх) потом Delphi без энтузиазма. и в mql я самоучка. С++ не изучал вообще. 

Но мне хватает этих знаний для программирования. На Мега проекты я не претендую.  

Документация по MQL5: Стандартная библиотека
Документация по MQL5: Стандартная библиотека
  • www.mql5.com
Стандартная библиотека - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
Vladislav Andruschenko:

2017.03.12 15:04:46.950 Core 1 2017.03.09 16:06:19   CTrade::OrderSend: modify EURUSD (sl: 1.26250, tp: 1.05719) [done]

‌у Вас в коде используются стандартные библиотеки. Вы сами ответили на свой вопрос. 

на на счет школьного вопроса ко мне. то такого типа как string в принципе нет. 

int занимает 4 байта помоему. а string это массив char, char это то же целое число. Но там вроде как для строки то же выделяется своя память и она больше чем int

‌я учился на Pascale еще в 13 лет(в 7 мне подарили ZX в 12 лет мне подарили первый 286 эх) потом Delphi без энтузиазма. и в mql я самоучка. С++ не изучал вообще. 

Но мне хватает этих знаний для программирования. На Мега проекты я не претендую.  


ZX Spectrum-сила!-сам не мог нарадоваться!)))
 
Andrey Khatimlianskii:

Критерий очень прост: продукт будет загружен пользователем и тут же протестирован:

  • с параметрами по умолчанию,
  • на любом из доступных инструментов,
  • в любом из доступных режимов,
  • с каким угодно торговым окружением.

Н‌икто не будет читать инструкцию или смотреть видео, в котором вы объясняете всю сложность и уникальность расчетов, из-за которых тест идет 20 минут. Это никому не надо, это массовый маркет.

П‌оэтому по умолчанию продукт должен тестироваться:

  • быстро
  • совершая достатоное кол-во торговых операций
  • не выдавая ошибок в журнале
  • показав какой-то результат
А вашу супер-функциональность, которая работает в специфических условиях, требует настройки или длительного времени, делайте опциональной.

В общем-то, я с вам соглашусь! Увы и да, реальность, именно такова.

Правда... то, что я подчеркнул, меня немного заставляет задуматься и задаться вопросом: собственно, инструкция именно для этого и пишется, не?

А‌ для остального всегда есть такие критерии, для которых, хотя бы нужно включить интеллект: предназначение, преимущества, недостатки. Но это ИМХО!

 
Vladislav Andruschenko:



Разве это важно кто какие библиотеки использует и какой длины коды пишет.  Библиотеки созданы для того, чтобы не написать длинных кодов.

П‌росто ваш робот - дед мороз месячный тест проходил за 50 минут, и не ясно сколько потребуется для годового теста, а вы жалуетесь, что при валидации время не хватает.

К‌ак вы будете проверить его, не говоря уже об оптимизации.

Я пишу программы с давних времен. И‌ не важно кто сколько лет пишет программы.  Важно как он это делает.

 
Petros Shatakhtsyan:


Разве это важно кто какие библиотеки использует и какой длины коды пишет.  Библиотеки созданы для того, чтобы не написать длинных кодов.

П‌росто ваш робот - дед мороз месячный тест проходил за 50 минут, и не ясно сколько потребуется для годового теста, а вы жалуетесь, что при валидации время не хватает.

К‌ак вы будете проверить его, не говоря уже об оптимизации.

Я пишу программы с давних времен. И‌ не важно кто сколько лет пишет программы.  Важно как он это делает.


я‌ реально не могу добиться скорости выше на деде. Я точно так же был в шоке, когда увидел , что месячный тест проходит очень долго. Но. Я не знаю почему. Я занимался оптимизацией кода, убирал лишний функционал. Но он начинает тормозить с 10 месяца 2016 года, если запустить тест с 2016 года - то первые 10 месяцев он пролетает очень быстро, а потом начинается тормоза. Почему? не знаю. Я грешу только на качество котировок. больше тиков - у меня робот обрабатывает каждый тик. Но почему он тормозит я не знаю. 

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

как я и предпологал.

о‌сновные тормоза происходят именно на обработке тика, и не моей функции, а вытаскивание данных по тику

      if(SymbolInfoTick(Symbol(),last_tick))
        {
          Bid=last_tick.bid;
          Ask=last_tick.ask;}