Выпущен MetaTrader 4 Client Terminal build 600 с обновленным языком MQL4 и Маркетом приложений - страница 44
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Ситуация следующая. Написал в 509 билде скрипт-тестер по ценам Open. Условие на "открытие" позиций выдают 4 машки. Например, MA1<MA2 && MA2>MA3 && MA3>MA4. Но скрипт ещё и оптимизирует периоды машек для достижения лучших результатов "торговли". Перенес скрипт в 604 билд. Все переделки - чуток подрихтовать, чтоб ушла кучка варнингов, ни одной ошибки. При наблюдении глазенапно (на моник выводится куча инфы) скрипт работает одинаково в обоих билдах. Но в в 604 выдает в 3 раза меньше найденных прибыльных вариантов. Практически, 509 выдает около 40 вариантов, 604 12-16. Хотя, совпадения и есть, но всего несколько штук. Разумеется, все тестирования на одном и том же фрейме, историческом периоде, валютной паре и по ценам Open. Слил в цсв в 2 колонки цены Open из 509 и 604 билда. 10 тысяч значений. Из одной колонки отнял вторую, все 10 тыс. разниц дали 0, т.е. цены Open одинаковые от обоих билдов. Далее, слил в цсв Open'ы из 509 и дал их 604-му. Скрипт отработал нормально (опять же глазенапно), но не выдал ни единого прибыльного варианта. Да, надо, наверное, сказать, что значит "скрипт отработал нормально". На экран выводится много информации: периоды машек, текущие профиты/убытки, количество сделок, содержимое массива, в который записываются все варианты "торговли". Вся инфа на экране "живая", т.е. все цифирьки мельтешат результаты в массив пишутся, листинг массива удлиняется... И т.д. В общем, в обоих билдах и во всех случаях действо на экране выглядит одинаково. Но в результирующий цсв пишутся только положительные варианты торговли. И не было записано ни одного, когда 604 работал по ценам Open от 509. Но это же скрипт. И ему нужны только цены Open. А эти цены в обоих билдах одинаковые. И если цены одинаковые, то в чем тогда разница? Цены во всех случаях нормализованы. К 5-знаку. Если кто-то знает, прошу поделиться.
Ситуация следующая. Написал в 509 билде скрипт-тестер по ценам Open. Условие на "открытие" позиций выдают 4 машки. Например, MA1<MA2 && MA2>MA3 && MA3>MA4. Но скрипт ещё и оптимизирует периоды машек для достижения лучших результатов "торговли". Перенес скрипт в 604 билд. Все переделки - чуток подрихтовать, чтоб ушла кучка варнингов, ни одной ошибки. При наблюдении глазенапно (на моник выводится куча инфы) скрипт работает одинаково в обоих билдах. Но в в 604 выдает в 3 раза меньше найденных прибыльных вариантов. Практически, 509 выдает около 40 вариантов, 604 12-16. Хотя, совпадения и есть, но всего несколько штук. Разумеется, все тестирования на одном и том же фрейме, историческом периоде, валютной паре и по ценам Open. Слил в цсв в 2 колонки цены Open из 509 и 604 билда. 10 тысяч значений. Из одной колонки отнял вторую, все 10 тыс. разниц дали 0, т.е. цены Open одинаковые от обоих билдов. Далее, слил в цсв Open'ы из 509 и дал их 604-му. Скрипт отработал нормально (опять же глазенапно), но не выдал ни единого прибыльного варианта. Да, надо, наверное, сказать, что значит "скрипт отработал нормально". На экран выводится много информации: периоды машек, текущие профиты/убытки, количество сделок, содержимое массива, в который записываются все варианты "торговли". Вся инфа на экране "живая", т.е. все цифирьки мельтешат результаты в массив пишутся, листинг массива удлиняется... И т.д. В общем, в обоих билдах и во всех случаях действо на экране выглядит одинаково. Но в результирующий цсв пишутся только положительные варианты торговли. И не было записано ни одного, когда 604 работал по ценам Open от 509. Но это же скрипт. И ему нужны только цены Open. А эти цены в обоих билдах одинаковые. И если цены одинаковые, то в чем тогда разница? Цены во всех случаях нормализованы. К 5-знаку. Если кто-то знает, прошу поделиться.
Несмотря на то, что тест по ценам Open, во внимание принимаются также цены High и Low. Поэтому их нужно бы сравнить аналогичным образом.
Хотя это только одна из догадок, т. к. информация далеко неполная.
Несмотря на то, что тест по ценам Open, во внимание принимаются также цены High и Low. Поэтому их нужно бы сравнить аналогичным образом.
Хотя это только одна из догадок, т. к. информация далеко неполная.
Ок, уточню. ТОЛЬКО по ценам Open. Далее уточню:
- Обзовем для краткости
(MA1<MA2 && MA2>MA3 && MA3>MA4) байусловием.
(MA1>MA2 && MA2<MA3 && MA3<MA4) селусловием.
- Ну и, собссно, сам тестер. ))
if(байусловие) { buyopen=Open[i]; profit+=selopen-Open[i]; }
if(селусловие) { selopen=Open[i]; profit+=Open[i]-buyopen; }
Как видим, ничего, кроме Open. Доп. фишка только в том, что этот тестер вертится в оптимизаторе, который подбирает периоды машек.
Правда, оптимизатором является ГА. Но ГА без ГСЧ, это просто алгоритм. А вот ГСЧ у меня свой, оформлен в виде длл, т.е. можно сказать, что платформонезависим.
Подскажите, из-за чего возникает ошибка
Access violation read to 0x06B6E000 in 'C:\Users\Артем\AppData\Roaming\MetaQuotes\Terminal\8FD06A683FF4626F1C00C9778897E9F1\MQL4\Scripts\ScriptName.ex4'
Скрипт должен открыть файл и переписать из него данные в массив. Затем закрыть файл. В прошлых версиях MQL4 никаких ошибок при работе с этим скриптом не возникало.
Причем данные из файла считываются. Лог появляется только при закрытии файла.
Прошу прощения за непроизвольный обман. Подустал уже гонять одно и тоже туда и обратно. Промахнулся с массивами, когда кормил 604 ценами от 509.
Скрипт в билдах работает по разному, как и написал выше. В 509 около 40 вариантов, в 604 билде около 14.
Поправка. Сунул в 604 билд Open'ы от 509. И скрипт в 604 билде выдал 31 вариант. Т.е., фактически, равнозначно результатам работы в 509-м.
Покажу картинками, чтоб не грузить общественность необходимостью скачивать и пялиться в цсв.
Т.е. вот, что получилось. А если скрипт берет цены Open не из цсв от 509, а считывает свои с чарта, то выдает, максимум, 16 вариантов.
НО! На картинке ниже цсв с ценами Open из 509 и 604 билдов. Последняя колонка = разницы цен. Ноль везде.
Так в чем же причина?
Подскажите, из-за чего возникает ошибка
Access violation read to 0x06B6E000 in 'C:\Users\Артем\AppData\Roaming\MetaQuotes\Terminal\8FD06A683FF4626F1C00C9778897E9F1\MQL4\Scripts\ScriptName.ex4'
Скрипт должен открыть файл и переписать из него данные в массив. Затем закрыть файл. В прошлых версиях MQL4 никаких ошибок при работе с этим скриптом не возникало.
Причем данные из файла считываются. Лог появляется только при закрытии файла.
Теперь циферные обозначения ошибок были:
0x06B6E000
0x0D29FFFC
0x078EC000
0x0796D000
0x0796F000
ЧТО ЭТО????????????????????????????????????????????????????????????????????
Весь код уже по 10 раз проверил. В используемых функциях описание нигде не меняется...
Два часа уже бьюсь. Оторвать руки автору нововведений.
Теперь циферные обозначения ошибок были:
0x06B6E000
0x0D29FFFC
0x078EC000
0x0796D000
0x0796F000
ЧТО ЭТО????????????????????????????????????????????????????????????????????
Весь код уже по 10 раз проверил. В используемых функциях описание нигде не меняется...
Два часа уже бьюсь. Оторвать руки автору нововведений.
Теперь циферные обозначения ошибок были:
0x06B6E000
0x0D29FFFC
0x078EC000
0x0796D000
0x0796F000
ЧТО ЭТО????????????????????????????????????????????????????????????????????
Весь код уже по 10 раз проверил. В используемых функциях описание нигде не меняется...
Два часа уже бьюсь. Оторвать руки автору нововведений.
Кстати, пожалуйста убедитесь что используете 604 билд терминала.
Теперь циферные обозначения ошибок были:
Не могу понять, почему екзешник библиотеки (lib_Zemckikh.ex4') терминал ищет в папке Experts:
Есть некий индикатор Stoch-multyPrice. Он обращается к заголовочному файлу:
#include <lib_Zemckikh.mqh>
Этот файл (расположен в песочнице в папке "include"), в свою очередь, имеет директивы:
#import "lib_Zemckikh.ex4"
Файл "lib_Zemckikh.ex4 расположен в той же песочнице в папке libraries.
А терминал 604 build ищет "lib_Zemckikh.ex4 почему-то в Experts.
Cannot open file 'C:\Users\Борис\AppData\Roaming\MetaQuotes\Terminal\09FF11FDFB78D85984B576AD209A07DF\MQL4\Experts\lib_Zemckikh.ex4' [2]
В 603 все было нормально.