Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
теперь выдает
2012.02.26 15:47:46 Tester file C:\Users\openlive\AppData\Roaming\MetaQuotes\Terminal\9C3619DDD286B60B1DB9B989A2FFC701\MQL5\Files\signal10000.csv open error [32]
Во-первых, проверьте что там у вас в папке C:\Users\openlive\AppData\Roaming\MetaQuotes\Terminal\9C3619DDD286B60B1DB9B989A2FFC701\MQL5\Files\
Второе: ошибки 32 в MQL5 нет. Странно... Вы проверяете хендл после попытки открывия файла и код последней ошибки после попытки открытия?
Что такое "режим математических расчётов"?
Что такое "режим математических расчётов"?
В этом режиме вызывается только OnTester(); Но сложность и объём расчётов в OnTester() не ограничивается. Если сами посчитаете прибыль вашего эксперта при заданных входных параметрах - сможете использовать генетический алгоритм тестера для оптимизации.
Помогите пожалуйста разобраться, мозг кипит.
1. Я понимаю так что переход на x64 ОС, связан с тем что на 4 байтах более 4 ГБайт оперативки не "разметишь". У меня x64 ОС, почему указатели у меня занимают 4 байта (касается не только mql, также и в C++))?
2. Вопрос по MT4: почему при вызове dll функции:
в dll переменную можно нормально принять в таких вариантах:
хотя предполагаю что указатель и ссылка, по идеи должны быть не совместмы, например потому что указатель на double занимает у меня 4 байта.
Так работает:
Не работает:
Хотя бы как привильно (хочу передать несколько массивов)? А то не хочу через задний ход.
Хотя бы как привильно (хочу передать несколько массивов)? А то не хочу через задний ход.
а в MQL в объявлении функции кто будет & ставить?
Да, наверное так будет правильно. Только все равно МКЛ как-то не по Си работает (могу ошибаться).
Да, наверное так будет правильно. Только все равно МКЛ как-то не по Си работает (могу ошибаться).
есть одно отличие в передаче - все нужно передавать только по ссылке &, по указателю ' * ' можно передавать только объекты классов
Я считал что элементарный участок памяти состоит из двух частей - адрес и значение. Если передаем адрес, то он должен быть в какой-то переменной с адресом передаваемого участка в поле "значение". Поэтому непонимаю как могут одновременно корректно работать такие варианты:
Можно попробывать найти объяснение типа - передается участок памяти "как есть" а принимающая сторона сама решает что с ним делать (записать адрес в значение или копировать адрес). Но эта гипотеза разрушается тем фактом что не работает так:
Можно опять попытаться найти объяснение - в первых дувух на вход подается адрес в поле "значение", а принимающая сторна решает что с этим делать. В противовес этому тот факт что в С++ комипилятор говорит что так делать нельзя, по его мнению или так:
или так:
В общем ничего кроме противоречий я не вижу.Сам спросил, сам отвечу.
Пришел к выводу что ссылка и указатель по большему вещи одинаковые. Есть Небольшие отличия:
Очень важным моментом является: если у вызываемой функции аргумент - ссылка или указатель, то фактически передается адрес. Это очень важно понимать при вызове из dll.
Подскажите чайнику, как найти точное значение пересечения главной и индикаторной линии стохастика?
Визуально это просто, а как реализовать программно?