![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Меня вот тут сейчас осенило. Может быть как-то можно вызывать тестер стратегий програмно? Если кто знает как поделитесь.
Нет из эксперта я имелл виду вызывать тестер в этом же терминале.
Нет из эксперта я имелл виду вызывать тестер в этом же терминале.
Может кто-то знает как заставить с помощью эксперта принудительно перезаписать hst файлы. Даже тот таймфрейм на котором работает эксперт.
Нет из эксперта я имелл виду вызывать тестер в этом же терминале.
Может кто-то знает как заставить с помощью эксперта принудительно перезаписать hst файлы. Даже тот таймфрейм на котором работает эксперт.
вседаки я не вижу в этом смысла, предположим автооптимизация запускается 1 раз в сутки, в момент запуска терминала происходит подкачка истории. А по поводу запуска тестера в той-же папке - неполучается (запуск копии терминала заблокирован в нутри программы) проверял.
У меня сейчас все работает следующим образом.
1. Работает эксперт в торговом терминале.
2. Перед запуском оптимизации закачивает историю по нужным мне валютным парам и запускает оптимизатор
3. В терминале где происходит оптимизация, архив по валютным парам сделан как NTFS ссылки, т.е. мы имеем туже историю для тестирования, что и в торговом терминале.
4. Оптимизация прошла параметры передались в торговый терминал.
Остаётся одна маленькая каверза, если эксперт работает на компе круглые сутки, причем терминал не закрывается и не перегружается, то история по катеровкам как бы висит в памяти, а не в файлах. Я понимаю если бы сделали функцию хотябы 1 раз в час сброс катеровок в файлы проблема бы отпала, а так ведь получается если эксперт провисел 2 недели, то все 2 недели катеровок хранятся в памяти и только при закрытии терминала они будут сброшены на диск.
Тогда возникает логичный вопрос, как или перезаписать принудительно базу катеровок или автоматически перезагрузить терминал.
При работе с несколькими валютами одновременно можно сделать что-бы эксперт самостоятельно записывал историю в один файл сразу по всем нужным символам, а потом при тестировании брал историю именно с этого файла.
Здравствуйте, помогите с проблемой, я создаю 2 массива, 1 строковый, 2 числовой, в строковый записываю пары из обзора рынка, записываются как положено, в цифровой записываю расчитаный размер стоплоса и тут проблема, в тот момент когда ячейка из числового массива соответствующая ячейки из строкового пересчитывается и записывается в массив на свое место, предыдущая ячейка обнуляется, я хочу что бы обнуления не было, но запись идет как положено.
Вот код:
string mas[100];
for (int i = 0; i < SymbolsTotal(true); i++)
{
mas[i] = SymbolName(i, true);
}
double mass[100];
for (int p = 0; p < OrdersTotal(); p++)
{
for (int k = 0; k < SymbolsTotal(true); k++)
{
if (mas[k] != OrderSymbol()) continue;
{
mass[k] = MathAbs(OrderOpenPrice() - OrderStopLoss());
}
}
}