Нужны ли dll библиотеки в Маркете для профессиональных торговых систем. - страница 2

 
Bonifacy:
Ренат, вы как обычно... Я даже не сомневался, что вы будете отвечать в ветке и что все к этому скатиться -- "Наше болото самое лучшее болото в мире! Ура, товарищи!". С вами вести полемику, а тем более дискуссию невозможно в принципе, как обычно, отвечаете избирательно и не цельно, только на, что хочется и удобно, придираясь к словам ("может", "будет" - конечно будет). Пишите везде и где только можно... не понятно когда вы код писать успеваете.
А вы просто используйте слова, за которые можете поручиться.

Если сами наделали провокационных и невпопад заявлений, то и получили адекватный ответ.
 
to Renat:
DoIgnore();
AddToBlackList();
to VDev Согласен, BID ASK и пр. пишутся в файл без использования внешней библиотеки, тут погорячился, пункт лишний. Ну вот, есть же люди которые понимают, что для качественной разработки, требуются качественные библиотеки общего функционала. Лично я вообще за то чтобы появилось API MT такое же как и для QUIK или CQG, но это мне и еще небольшой горстке людей удобно. Имея такое API можно быстро разрабатывать стратегии и находить надежно-доходные. Нет STL, зато есть Code Base где масса полезного. Вот очень нужная вещь для любого эксперта: Flight smiles
 
Bonifacy:
Ренат, вы как обычно... Я даже не сомневался, что вы будете отвечать в ветке и что все к этому скатиться -- "Наше болото самое лучшее болото в мире! Ура, товарищи!". С вами вести полемику, а тем более дискуссию невозможно в принципе, как обычно, отвечаете избирательно и не цельно, только на, что хочется и удобно, придираясь к словам ("может", "будет" - конечно будет). Пишите везде и где только можно... не понятно когда вы код писать успеваете.

А конкретнее можно? Что не устраивает?

Медленные тесты? Сделайте быстрее! Когда сделаете, сравните возможности с МТ.

Сохранение отчетов в процессе оптимизации? Легко, без DLL.

Еще "недостатки" есть? 

 

Для информации - все результаты оптимизаций в обязательном порядке записываются в /tester/cache каталог в виде отдельных текстовых *.xml файлов специально, чтобы их можно было удобно открывать в других программах.

Например, в Excel/OpenOffice, где можно по всякому их крутить:

В колонках представлены все статистические характеристики каждого прогона - там примерно 40 параметров.

Важно, что эти *.xml файлы самым активным образом используются тестером во время оптимизации, откуда автоматически берутся уже ранее посчитанные результаты, если исходные данные тестов не изменились. За контроль неизменности отвечает специальная сигнатура в конце строки:



Сброс накопленных данных идет порциями по ходу тестирования. Это означает, что можно безболезненно остановить тест, а потом запустить снова и продолжить вычисления - тестер автоматически считывает базу из соответствующего *.xml файла при старте оптимизации.

Это работает автоматически и трейдеры об этом даже не догадываются, по всей видимости. Даже остановка/продолжение оптимизации в генетическом режиме поддерживается:

Кэш результатов оптимизации

Численные значения всех параметров и характеристик, полученные в результате оптимизации, по ее завершении сохраняются в XML-файл, расположенный в папке папка_данных_терминала/tester/cache/. Файлу присваивается имя по следующему правилу: ExpertName.Symbol.Period.GenerationMode.xml. Здесь:

  • ExpertName — наименование оптимизируемого эксперта;
  • Symbol — символ;
  • Period — таймфрейм (M1,H1,...);
  • GenerationModeрежим генерации тиков (0 — "Все тики", 1 — "OHLC на M1", 2 — "Только цены открытия").

Этот файл можно использовать для анализа во внешних программах (например, MS Excel).

  • При генетической оптимизации промежуточные результаты сохраняются в кэше после расчета каждого поколения (файл папка_данных_терминала/tester/cache/*.gen). Таким образом, процесс генетической оптимизации можно прерывать в любой момент. Даже если процесс генетической оптимизации будет прерван из-за внешних причин (например, отключения электричества), оптимизация будет автоматически продолжена с последнего рассчитанного пополнения при последующем запуске. Кэш генетической оптимизации хранится до изменения настроек оптимизации или до завершения процесса оптимизации.
  • При штатной остановке оптимизации (кнопкой "Стоп") сохраняются все ранее рассчитанные проходы. При возобновлении оптимизации, процесс будет продолжен с места остановки.
 

Даже не поленился сделал тестовый файл, содержит три процедуры:

1) На каждом тике выполняем операцию сложения сто раз (~2 сек)

2) Раз в 100 тиков выводим "Hello, Test" (~2.1 сек)

3) На каждом тике вычитаем Open из Close, раз в 10000 тиков совершим торговую операцию. Самая простая торговая система в мире - минимум операций. (~4.5 сек)

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

 

При этом реальный советник без супер-пупер вычислений прогоняется на таких же данных за ~90сек. Все объекты создаются в OnInit один раз, запроса данных о погоде на сервер в Ките нет, короче, без наворотов. Что там происходит полторы минуты не понятно.

Ну а мощь инструментария отладки советников просто на высоте, любите, цените - printf. Почему не сделать возможной отладку во время тестового прогона, не только риал тайм? Как прикажите отлаживать, если ТС совершает сделку раз в 1 неделю? Закупаться спичками?

Кстати, тут такой момент интересный обнаружился. Запустил тест чудо-советника на двух разных компьютерах. Параметры одни и те же: EURUSD 1М за Последний год все тики. И почему-то на одном компьютере генерировалось ~4млн тиков, а на втором всего ~2.8млн. 0_o раньше не замечал такого...

Файлы:
DoNothing.mq5  3 kb
 

Рановато вам еще советы давать при таком уровне знаний. 

 
Renat:

Рановато вам еще советы давать при таком уровне знаний. 

А у вас какой уровень знаний?

Ренат, повторюсь, диалог с вами пустая трата времени. Кроме Себя вы никого не слышите. 

 
Renat:
Слово "может" (вредоносный код в DLL) надо читать исключительно как "будет". Вместе с уничтожением понятия маркета.


 

 

 Может я чего упустил? Мне помнится. что запрещены любые DLL, включая винусовские.

Я бы поделил DLL на две категории: самопальные и все остальные. По самопальным нет никаких вопросов.

 

А вот по остальным, особенно по тем, которые можно установить из сторонних, пусть признаваемых метаквотами, систем, из той же С++, или моей любимой R. Почему я не могу выложить  в маркете советники индикаторы, использующие R? Какой вредоносный код? Откуда? Я выкладываю свой код, а недостающая часть кода берется из стандартной поставки R, у которой пользователь на порядки больше, чем метаквотов (пардон).  

 
faa1947:

 

 Может я чего упустил? Мне помнится. что запрещены любые DLL, включая винусовские.

Я бы поделил DLL на две категории: самопальные и все остальные. По самопальным нет никаких вопросов.

 

А вот по остальным, особенно по тем, которые можно установить из сторонних, пусть признаваемых метаквотами, систем, из той же С++, или моей любимой R. Почему я не могу выложить  в маркете советники индикаторы, использующие R? Какой вредоносный код? Откуда? Я выкладываю свой код, а недостающая часть кода берется из стандартной поставки R, у которой пользователь на порядки больше, чем метаквотов (пардон).  

Сегодня берётся, а завтра эта библиотека уже подменена. А Вы, или Ваши покупатели, что наиболее страшно, ни сном ни духом об такой замене не ведают. Именно поэтому в Маркете не будет никаких dll. 
 
barabashkakvn:
Сегодня берётся, а завтра эта библиотека уже подменена. А Вы, или Ваши покупатели, что наиболее страшно, ни сном ни духом об такой замене не ведают. Именно поэтому в Маркете не будет никаких dll. 

Я понимаю, у Сноудена полно приятелей....

Конкретнее, как, кем в маркете кроме самих метаквотов будет заменена библиотека? 

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