Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Обсуждение статьи "Статистические распределения в MQL5 - берем лучшее из R и делаем быстрее"
fxsaber, 2016.11.14 10:11
Прошу доработать CGraphic и CCurve. Слабые классы получились. И наследоваться от них почти нереально, потому что нужное - private. Долго вникал, но чтобы поправить до нормальной эксплуатации, требовалось переписывать самому классы.
Захотел сделать интерактивный тиковый график - вышло только костыльно (без переписывания классов)
void GetPrices( double &Bids[], double &Asks[], const int Count = 100 )
{
MqlTick Ticks[];
const int Amount = CopyTicks(_Symbol, Ticks, COPY_TICKS_INFO, 0, Count);
ArrayResize(Bids, Amount);
ArrayResize(Asks, Amount);
for (int i = 0; i < Amount; i++)
{
Bids[i] = Ticks[i].bid;
Asks[i] = Ticks[i].ask;
}
}
CGraphic* Graphic = new CGraphic;
const string Name = "Graphic" +(string)(GetTickCount() + MathRand());
void OnDeinit( const int Reason )
{
Graphic.Destroy();
delete Graphic;
ChartRedraw();
}
void GraphTicks( const double &Price1[], const double &Price2[] )
{
Graphic.Destroy();
delete Graphic;
Graphic = new CGraphic;
Graphic.Create(0, Name, 0, 0, 0, (int)(ChartGetInteger(0, CHART_WIDTH_IN_PIXELS) * 0.8), (int)ChartGetInteger(0, CHART_HEIGHT_IN_PIXELS));
Graphic.AddCurve(Price1, CURVE_LINES);
Graphic.AddCurve(Price2, CURVE_LINES);
Graphic.PlotAllCurves();
Graphic.Update();
}
void OnTick()
{
double Bids[], Asks[];
GetPrices(Bids, Asks);
GraphTicks(Bids, Asks);
}
Нет DeleteCurve, ChangeCurve и т.д.
Попробуйте доработать такую идею, библиотека на 99% будет работать и на MQL4
Спасибо! Идея понятна.
Может есть другие варианты?
Спасибо! Идея понятна.
Может есть другие варианты?
По принципу период_конвертера генерируйте 10-секундный тайм-фрейм, открывайте график автономно и работайте с ним.
По принципу период_конвертера генерируйте 10-секундный тайм-фрейм, открывайте график автономно и работайте с ним.
Тоже вариант, спасибо!
Мне предполагалось, что в потоке поступающих тиков поставить временной фильтр. Не совсем понимаю, как это работает, поэтому хотелось услышать подсказку.
Может, это технически не реализуемо?
Данная подкрутка интересна, чтобы убрать непрерывное движение графика и сделать этот процесс слайдоподобным.
Тоже вариант, спасибо!
Мне предполагалось, что в потоке поступающих тиков поставить временной фильтр. Не совсем понимаю, как это работает, поэтому хотелось услышать подсказку.
Может, это технически не реализуемо?
Данная подкрутка интересна, чтобы убрать непрерывное движение графика и сделать этот процесс слайдоподобным.

- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Добрый день!
Меня интересует вопрос:
как реализовать задержку тикового обновления графика на заданный период, например на 10 сек. При этом, не отключаясь от сети с возможностью открывать ордера.
Т.е. желаемая картина - работа на статичном графике, обновляемом не по каждому тику, а раз в определенный период.