[ВНИМАНИЕ, ТЕМА ЗАКРЫТА!] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда. - страница 147
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Разобрался с прорисовкой индикатора (рекурсивный с начальной инициализацией, по идее нужно инициализировать с фиксированной даты, чтобы выходящие бары не изменяли начальные значения индикатора). Язык похоже неплохой но есть огромная проблема с документацией к языку.
получилось сделать так:
Если (IndicatorCounted<0) return с ошибкой
Если первое включение (IndicatorCounted==0) и нужно просчитать всю историю, то считать всю историю
{
если (Bars <= Length) {инициализация переменных начальными значениями}
если (Bars > Length) расчет индиктаора
}
Если НЕ первое включение (IndicatorCounted>0) то посчитать только Bars-IndicatorCounted-1 баров
{
если (IndicatorCounted-1 <= Length) {инициализация переменных начальными значениями до Length}
если (IndicatorCounted-1 > Length) расчет индиктаора
}
ТЕПЕРЬ ВОПРОСЫ:
А этот алгоритм можно как-то попроще сделать? (получилось слишком много текста)
Как расшифровать дату и время, из функции Time? (по идее нужна дата и время конкретного бара)
Есть где-нибудь достаточно полный учебник по mql4 (кроме учебника Kirill и справки в metaeditor) с описанием что и как работает (например вышеприведенный алгоритм)?
Где найти описание mql библиотеки stdlib?
Вопрос другого уровня. Лучше свою тему создавать.
От чего возникает ошибка 130 ? как ее исправить?
В тестере эксперт работает без ошибок... на демо не может открыть ни одной сделки..
130 ошибка - вы неправильно указываете тейкпрофит и стоплос.
вероятные причины:
- ненормализована цена
- стопы находятся очень близко к рынку. уровень стоплевел. Он может плавать. поэтому его тоже нужно контролировать.
Если у вас они 5-10 пунктов, то смотрите, откуда они у вас вычисляются - от бида или аска.
- также пробема может быть в том, что брокеру нельзя давать стопы при рыночном исполнении ордера (например броко). Они должны ставится на уже открытом ордере.
Замечания: файлы могут открываться только в папке каталог_терминала\experts\files (каталог_терминала\tester\files в случае тестирования эксперта) или ее подпапках.
как это реализовать? автоматом программа не находит файл в подпапках.
Замечания: файлы могут открываться только в папке каталог_терминала\experts\files (каталог_терминала\tester\files в случае тестирования эксперта) или ее подпапках.
как это реализовать? автоматом программа не находит файл в подпапках.
А как ты их ищещь?
вот в том-то и вопрос - как искать? в документации не нашол ни слова.
использую :
#import "kernel32.dll"//библиотека функций
int FindFirstFileA(string path, int & answer[]);//находит первый файл
bool FindNextFileA(int handle, int & answer[]);//находит последующие файлы, один за другим
bool FindClose(int handle);//прекращает поиск
#import
но судя по "или ее подпапках" это можно делать средствами MQL
вот в том-то и вопрос - как искать? в документации не нашол ни слова.
использую :
#import "kernel32.dll"//библиотека функций
int FindFirstFileA(string path, int & answer[]);//находит первый файл
bool FindNextFileA(int handle, int & answer[]);//находит последующие файлы, один за другим
bool FindClose(int handle);//прекращает поиск
#import
но судя по "или ее подпапках" это можно делать средствами MQL
Средствами MQL можно создать файл и что-то в него записать. Можно открыть существующий файл и что-то прочитать. Есть этот файл или нет - зависит от тебя.
еще разок:
файлы могут открываться только в папке каталог_терминала\experts\files (каталог_терминала\tester\files в случае тестирования эксперта) или ее подпапках.
я использую для открытия стандартное
int handle;
handle=FileOpen("my_data.csv",FILE_CSV|FILE_READ,';');
таким образом файл создается/открывается в папке каталог_терминала\experts\files, но не в подпапках!
указаний как создать/открыть файл в подпапках я не нашол ни на форуме ни в документации.
может это ошибка в документации?
..указаний как создать/открыть файл в подпапках я не нашол ни на форуме ни в документации.
Может так попробовать (предварительно создав папку files/my_dir)?
handle=FileOpen("my_dir/my_data.csv",FILE_CSV|FILE_READ,';');