Итак, накипело.
Не буду говорить что проверяющие роботов в маркете идиоты. Скорее всего они грамотные люди, но просто зажаты в рамки условий компании, ну а знать хотя бы основы mql 4/5 им тоже не надо. Они ведь не пишут роботов а только проверяют их. Поэтому сразу об этих самопротиворечащих условиях.
1. Есть мультивалютный робот. Мультивалютный в моём понимании это не там где берётся одна стратегия и гонится по всем символам из одного робота. Нет. Мультивалютный это где рассматриваются некие связи между валютными парами и далее принимается решение. То есть исходя уже из этого понятно что для тестирования мне необходимо в тестер загрузить как минимум две валютные пары.
2. Прописать в код жёстко необходимые пары глупо так как у брокеров их разное количество и могут быть разные наименования, например EURUSD.m
3. Каким образом мне загрузить валютные пары в тестер не прописывая их в роботе? Вариантов два: Первый - послать всех и загрузить в тестер вообще всё что есть и использовать только необходимые пары (сверх глупый вариант) или создать файл, допустим .csv и прописав нужные мне пары в этой файле, потом его подгрузить в тестер с помощью директивы
4. Для реализации записи нужных пар в файл, в роботе можно предусмотреть специальный режим подготовки этого файла. Т. е. к примеру робот взял обзор рынка, записал то что нужно в эксель и выгрузился. Далее этот файл подгрузится в тестере.
5. А проблема в том что такой режим работы не проходит автотестирование и модераторы начинают предлагать неадекватные идеи для того чтобы пройти этот автотест.
6. Эпилог - мультитестирование не возможно без директивы #property tester_file, которая не поддерживается автопроверкой роботов для публикации в маркете. Это надо исправить. Иначе получается замкнутый круг.
О боже... Зачем из мухи раздувать слона? Он-же (слон) улетит и не поймаешь...
Ведь эта проблема решается на раз...
В On_Init() Получаешь название символа _Symbol и читаешь что у него есть от шестого символа в строке. Это и есть то что надо добавить к другому символу.
Получил EURUSD.m отсюда к GBPUSD надо добавить .m
string symb2 = "GBPUSD" string newSymbol; StringConcatenate(newSymbol, symb2, StringSubstr(_Symbol, 6));
ВСЁ!!! Куда делись идиоты???
О боже... Зачем из мухи раздувать слона? Он-же (слон) улетит и не поймаешь...
Ведь эта проблема решается на раз...
В On_Init() Получаешь название символа _Symbol и читаешь что у него есть от шестого символа в строке. Это и есть то что надо добавить к другому символу.
Получил EURUSD.m отсюда к GBPUSD надо добавить .m
ВСЁ!!! Куда делись идиоты???
Вы привели частный случай. А что будем делать с символами BCOUSD, он же _BRN, он же #BRNZ, он же #ENZ3, он же _EN?
Вы привели частный случай. А что будем делать с символами BCOUSD, он же _BRN, он же #BRNZ, он же #ENZ3, он же _EN?
В вопросе был частный случай, на этот частный я и отвечал.
Alexey Oreshkin:
2. Прописать в код жёстко необходимые пары глупо так как у брокеров их разное количество и могут быть разные наименования, например EURUSD.m
......
Итак, накипело.
Не буду говорить что проверяющие роботов в маркете идиоты. Скорее всего они грамотные люди, но просто зажаты в рамки условий компании, ну а знать хотя бы основы mql 4/5 им тоже не надо. Они ведь не пишут роботов а только проверяют их. Поэтому сразу об этих самопротиворечащих условиях.
1. Есть мультивалютный робот. Мультивалютный в моём понимании это не там где берётся одна стратегия и гонится по всем символам из одного робота. Нет. Мультивалютный это где рассматриваются некие связи между валютными парами и далее принимается решение. То есть исходя уже из этого понятно что для тестирования мне необходимо в тестер загрузить как минимум две валютные пары.
2. Прописать в код жёстко необходимые пары глупо так как у брокеров их разное количество и могут быть разные наименования, например EURUSD.m
3. Каким образом мне загрузить валютные пары в тестер не прописывая их в роботе? Вариантов два: Первый - послать всех и загрузить в тестер вообще всё что есть и использовать только необходимые пары (сверх глупый вариант) или создать файл, допустим .csv и прописав нужные мне пары в этой файле, потом его подгрузить в тестер с помощью директивы
4. Для реализации записи нужных пар в файл, в роботе можно предусмотреть специальный режим подготовки этого файла. Т. е. к примеру робот взял обзор рынка, записал то что нужно в эксель и выгрузился. Далее этот файл подгрузится в тестере.
5. А проблема в том что такой режим работы не проходит автотестирование и модераторы начинают предлагать неадекватные идеи для того чтобы пройти этот автотест.
6. Эпилог - мультитестирование не возможно без директивы #property tester_file, которая не поддерживается автопроверкой роботов для публикации в маркете. Это надо исправить. Иначе получается замкнутый круг.
Беда в том что найдутся умники которые на основе получаемой истории будут писать и продавать тестерные граали, это уже проходили. Дать доступ к полной истории в тестере не целесообразно.
О боже... Зачем из мухи раздувать слона? Он-же (слон) улетит и не поймаешь...
Ведь эта проблема решается на раз...
В On_Init() Получаешь название символа _Symbol и читаешь что у него есть от шестого символа в строке. Это и есть то что надо добавить к другому символу.
Получил EURUSD.m отсюда к GBPUSD надо добавить .m
ВСЁ!!! Куда делись идиоты???
О боже....Можно ведь сделать ещё умнее:
if (SymbolInfoString(sm1,SYMBOL_CURRENCY_BASE)!="EUR") continue; if (SymbolInfoString(sm1,SYMBOL_CURRENCY_PROFIT)!="USD") continue;
И тогда вообще всё равно на все префиксы и суффиксы. Если вопрос не ясен лучше молчать!
Но вопрос на самом деле исчерпан.
Проблема из-за директивы #property tester_file.
Раньше было так, что если эта директива указана и необходимый файл не найден то тестер выдавал ошибку. Сейчас этого нет, и при отсутствии файла тестирование идёт далее без проблем.
Я же при отсутствии данного файл просто завершал программу и поэтому не мог пройти тестирование. Так что данный вопрос решён, но проблема сотрудников в маркете всё равно не решена.
Но это уже не важно.
Кто нить с таким сталкивался ?
Почему ко мне имеет отношение то что тестер на стороне проверяющих не может найти файл отчёта ?
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Итак, накипело.
Не буду говорить что проверяющие роботов в маркете идиоты. Скорее всего они грамотные люди, но просто зажаты в рамки условий компании, ну а знать хотя бы основы mql 4/5 им тоже не надо. Они ведь не пишут роботов а только проверяют их. Поэтому сразу об этих самопротиворечащих условиях.
1. Есть мультивалютный робот. Мультивалютный в моём понимании это не там где берётся одна стратегия и гонится по всем символам из одного робота. Нет. Мультивалютный это где рассматриваются некие связи между валютными парами и далее принимается решение. То есть исходя уже из этого понятно что для тестирования мне необходимо в тестер загрузить как минимум две валютные пары.
2. Прописать в код жёстко необходимые пары глупо так как у брокеров их разное количество и могут быть разные наименования, например EURUSD.m
3. Каким образом мне загрузить валютные пары в тестер не прописывая их в роботе? Вариантов два: Первый - послать всех и загрузить в тестер вообще всё что есть и использовать только необходимые пары (сверх глупый вариант) или создать файл, допустим .csv и прописав нужные мне пары в этой файле, потом его подгрузить в тестер с помощью директивы
4. Для реализации записи нужных пар в файл, в роботе можно предусмотреть специальный режим подготовки этого файла. Т. е. к примеру робот взял обзор рынка, записал то что нужно в эксель и выгрузился. Далее этот файл подгрузится в тестере.
5. А проблема в том что такой режим работы не проходит автотестирование и модераторы начинают предлагать неадекватные идеи для того чтобы пройти этот автотест.
6. Эпилог - мультитестирование не возможно без директивы #property tester_file, которая не поддерживается автопроверкой роботов для публикации в маркете. Это надо исправить. Иначе получается замкнутый круг.