Вопросы от начинающих MQL5 MT5 MetaTrader 5 - страница 539
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Ошибки, баги, вопросы
comp, 2016.03.23 09:49
Как узнать период чарта по ChartID? ChartGetInteger этого сделать не позволяет в одно действие.
Пока придумал костыльное решение через сохранение шаблона и парсинг в нем периода.
Как нормально узнать?
Используйте ChartPeriod
ChartPeriod
Возвращает значение периода указанного графика.
ENUM_TIMEFRAMES ChartPeriod(
long chart_id=0 // идентификатор графика
);
Параметры
chart_id=0
[in] Идентификатор графика. 0 означает текущий график.
Возвращаемое значение
Значение типа ENUM_TIMEFRAMES. Если графика не существует, то возвращается 0.
Используйте ChartPeriod
Добрый день!
Как можно определить состояние панели торговли в один клик (развернута или свернута)?
Скажите как в этой ветке для начинающих искать вопросы на нужную тему. Ветка разрослась в огромный пласт вопросов и ответов и так в ручную искать уже не возможно. Задавать вопрос уже колеблешься, может здесь на него уже давно отвечали, а в поиске происходит поиск по всему сайту, а не по именно этому отделу "для начинающих" ?
Вводите в поиске гугля: искомое site:https://www.mql5.com/ru/forum/6343
"Искомое" - это то, что ищете.
Доброго времени суток!
Не могу понять как обработать бары за два часа, скажем, с 15 до 17 часов серверного времени, за последние 250 торговых сессий.
Подскажите концептуально, пожалуйста.
mql5
Доброго времени суток!
Не могу понять как обработать бары за два часа, скажем, с 15 до 17 часов серверного времени, за последние 250 торговых сессий.
Подскажите концептуально, пожалуйста.
mql5
используйте функции с запросом по времени
Sergey,
спасибо за ответ!
Для моей задачи удобнее
void OnStart()
{
datetime start =StringToTime("2016.03.25 15:00");
datetime stop =StringToTime("2016.03.25 15:55");
MqlRates rates[];
ArraySetAsSeries(rates,true);
int copied=CopyRates(_Symbol,PERIOD_M5,start,stop,rates);
if(copied>0)
{
Print("Скопировано баров: "+copied);
string format="open = %G, high = %G, low = %G, close = %G, volume = %d";
string out;
int size=fmin(copied,10);
for(int i=0;i<size;i++)
{
out=i+":"+TimeToString(rates[i].time);
out=out+" "+StringFormat(format,
rates[i].open,
rates[i].high,
rates[i].low,
rates[i].close,
rates[i].tick_volume);
Print(out);
}
}
else Print("Не удалось получить исторические данные по символу ",Symbol());
}
Как бы теперь убрать субботы и воскресенья?
Точнее, сделать подобную операцию за последние, скажем 250 торговых дней?
Sergey,
спасибо за ответ!
Для моей задачи удобнее
void OnStart()
{
datetime start =StringToTime("2016.03.25 15:00");
datetime stop =StringToTime("2016.03.25 15:55");
MqlRates rates[];
ArraySetAsSeries(rates,true);
int copied=CopyRates(_Symbol,PERIOD_M5,start,stop,rates);
if(copied>0)
{
Print("Скопировано баров: "+copied);
string format="open = %G, high = %G, low = %G, close = %G, volume = %d";
string out;
int size=fmin(copied,10);
for(int i=0;i<size;i++)
{
out=i+":"+TimeToString(rates[i].time);
out=out+" "+StringFormat(format,
rates[i].open,
rates[i].high,
rates[i].low,
rates[i].close,
rates[i].tick_volume);
Print(out);
}
}
else Print("Не удалось получить исторические данные по символу ",Symbol());
}
Как бы теперь убрать субботы и воскресенья?
Точнее, сделать подобную операцию за последние, скажем 250 торговых дней?
Попробуйте поработать с этой структурой