Открытый проект - тестер-оптимизатор своими силами - страница 6

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

Не поделюсь .. :)
У меня пока в планах нет делать свой тестер ..
 
Да..Базару больше..
Dart - если ты такой мега кул программер, который разобрался с дельфей за пару минут.
Помоги Rosh-у дописать тестер для MQL4, я уверен что с твоей скоростью ты разберешься с ним за секунды.
 
Я на МкуЛе больше не програмлю. Надоело. Да и язык отстойный. А я не мега кул программер. Просто простые вещи делать должен каждый.
Но требования к тестеру могу сформулировать, может вы их покритикует, тоды я в своем тестере исправления сделаю.
Итак, требования:
1. Тестер должен эмулировать приращение времени, чтобы внутри стратегии на это не заморачиваться.
2. Тестер должен обеспечивать процедуры работы с ордерами(установка, модификация и удаление)
3. Тестер должен по наступлении условий:
а) Закрывать ордера по стопу(всегда у стопа приоритет)
б) Закрывать ордера по профиту
в) Открывать отложенные ордера
г) Когда график закончился, тестер должен удалять все ордера
(открою страшную тайну, все это он делает с помощью стандартных процедур)
4. Тестер не должен лезть внутрь бара, кроме случаев, когда закрывается/открывается по отложенным ордерам или по стопу/профиту.
Это основное. Есть еще подсчет статистики, работа процедур управления ордерами, конвертация данных из *ю.csv в массивы, функции-методы. Это что есть.
Но будет круче. Я основных багов выловил, а дальше лень тестить тестер. Как только от тестировщиков отсчет придет, я продолжу.
А, считайте это моей помощью.
Кстати, не я один написал свой тестер. BiT с Виака тоже не доверяет всяким там "черным ящикам".

И еще. Тестер надо писать для чего-то, а не ради самого тестера. Вам что, тестера МТ3 не хватает?:-) А я пишу с целью добавления туды алгоритмов оптимизации стратегии, поэтому к скорости особое требования. А то, что вам тут демонстрируют
[quite]
VC++: Time: 47 ms, ResInt=-752584127 ResDouble=17247836076609
MQL4: Time: 797 ms, ResInt=-752584127 ResDouble=17247836076609
MQL2: Time: 22156 ms, ResInt=333333383333717340000 ResDouble=333333383333717340000
WL3 : Time: 32422 ms, ResInt=3.33333383333717E20 ResDouble=3.33333383333717E20
[/quote]
Не знаю, сам не проверял, но в моей программерской книжке написано, что преращение от таймера в Виндоуз98 генерируется каждые 55мс, в ХР - каждые 10мс, может автор дурак, хотя не похоже, но откуда там взялись 47мс, 797мс?
 
Ладно, видимо все таки придеться ждать тестера от разработчиков..
 
[qoute]
Ладно, видимо все таки придеться ждать тестера от разработчиков..
[/quote]

Каждому - своё.
 
Не знаю, сам не проверял, но в моей программерской книжке написано, что преращение от таймера в Виндоуз98 генерируется каждые 55мс, в ХР - каждые 10мс, может автор дурак, хотя не похоже, но откуда там взялись 47мс, 797мс?

Раз уж взялись за критику, то уж проверьте работу стандартной WinAPI функции GetTickCount() (не на Win98). Иначе получается:
1) на основе теоретических размышлений - "тестер написать легко"
2) по "моим программерским книжкам" - "автор дурак"
 

1) на основе теоретических размышлений - "тестер написать легко"
2) по "моим программерским книжкам" - "автор дурак"

Гы.
А что сложного в написании тестера? Если не секрет или комтайна. Или может я там что-то не так изложил? Я перечислил лишь то, что сделал сам. Может я что-то пропустил?
Ну а на абсолютную истину я никогда не претендовал.
А нельзя ли как-нибудь получить приращения не с 1мс, а с 1мкс или ниже?
 
Давно здесь не был. Уже и забыл, что здесь Dart отмечался - очень уж у него сильная аллергия на МТ похоже :)

Я посмотрел, человек 15-20 уже скачало то, что я выкладывал (тестером это назвать язык не поворачивается, скорее макет). Я не знаю, каков будет тестер в МТ4, но на все случаи жизни он не подойдет , всегда найдется какая-то специфическая задача, которой он не соответствует. Поэтому, все же не забывайте о возможности создания своего тестера-индикатора.
А применить его можно будет для:
1. оптимизации портфельной стратегии (сказали, что этого не будет)
2. генетических методов оптимизации
3. градиентых методов оптимизации с применением момента
4. обучения нейро-сетей

Это то, что я сходу вспомнил. А может вылезти еще как минимум столько же задач.

PS. К тому же. функции тестера можно будет переопределять в dll (на Cи или других языках). Хотя этот вопрос я еще не изучал. Это даст большую производительность и возможность отладки.
 
Я тоже в определенные моменты заморачивался тестером.
Некоторые выводы:
1) Для правильного тестирования вполне пойдут
минутки для M15 и ниже (тики - непозволительная роскошь)
5-минутки для H1 и M30
15-минутки для H4 и т.д.

2) Что делать со свопами?
3) Для тестирования кроссов необходимо уметь переводить их валюты
в USD для каждого момента в прошлом. Т.е. помимо GBPCHF необходимо
еще иметь массив котировок USDCHF и GBPUSD.