Aibek Mugiynov:
Пример тикового советника реализованного через Canvas polyline и FillCircle. Спасибо!
Круто! Канвас для тикового графика никто не делал. Спасибо за идею!
Вы хотите потиковый график эквити отображать через Канвас?
Anton Zverev:
нет, дневной график баланса
Круто! Канвас для тикового графика никто не делал. Спасибо за идею!
Вы хотите потиковый график эквити отображать через Канвас?
Aibek Mugiynov:
нет, дневной график баланса
tick_array-данные замените на историю баланса.
нет, дневной график баланса
Anton Zverev:
tick_array-данные замените на историю баланса.
вот как это сделать не знаю... не получается что-то
tick_array-данные замените на историю баланса.
Aibek Mugiynov:
вот как это сделать не знаю... не получается что-то
Бежите по истории от конца к началу, отнимая профиты и записывая время.
вот как это сделать не знаю... не получается что-то
Anton Zverev:
Бежите по истории от конца к началу, отнимая профиты и записывая время.
мне пример нужен)) а так я не пойму)) с простыми линиями сделал бы, но с канвасом немного трудно, не пойму че и как!
Бежите по истории от конца к началу, отнимая профиты и записывая время.
Aibek Mugiynov:
мне пример нужен)) а так я не пойму)) с простыми линиями сделал бы, но с канвасом немного трудно, не пойму че и как!
А канвас не при чем. Замените CopyTicks на другую функцию, что баланс записывает вместо тиков. И ничего больше по коду менять не надо.
мне пример нужен)) а так я не пойму)) с простыми линиями сделал бы, но с канвасом немного трудно, не пойму че и как!
Вы знаете как? Хотя бы пример какой-нить, а то я не скоро реализую функцию)
Aibek Mugiynov:
Вы знаете как? Хотя бы пример какой-нить, а то я не скоро реализую функцию)
Если вам нужно понять, как составить массив значений баланса, то поиск поможет. Если же канвас смущает, то по одним лишь только названиями можно разобраться, что делает исходник.
Вы знаете как? Хотя бы пример какой-нить, а то я не скоро реализую функцию)
Что-то я не так делаю... вчера работала, сейчас не работает... в Графике Canvas всё отображалась потом исчезло... сейчас ничего, а внизу индикатор работает без проблем! Ребята подскажите что тут исправить? Спасибо! индикатор Mql4
//+------------------------------------------------------------------+ //| testindicator.mq4 | //| Copyright © 2016, MetaQuotes Software Corp. | //| http://www.metaquotes.net | //+------------------------------------------------------------------+ #property copyright "Copyright © 2016, MetaQuotes Software Corp." #property link "http://www.metaquotes.net" #property indicator_separate_window color clr_ask = clrRed; //цвет ask color clr_bid = clrBlue; //цвет bid #property indicator_buffers 1 #property indicator_color1 Red #include <Canvas\Canvas.mqh> CCanvas Chart; //---- buffers double ExtMapBuffer[]; double MaxBuffer[]; double MinBuffer[]; int x_p[]; int y_p[]; int widtn_chart=0; int height_chart=0; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int init() { SetIndexStyle(0,DRAW_LINE,0,2); SetIndexBuffer(0,ExtMapBuffer); SetIndexShift(0, 1); return(0); } //+------------------------------------------------------------------+ //| Custom indicator deinitialization function | //+------------------------------------------------------------------+ int deinit() { //---- Chart.Destroy(); //---- return(0); } int start() { int counted_bars=IndicatorCounted(); int i=0, j=0, accTotal=OrdersHistoryTotal(), currentTotal = OrdersTotal(), tt = OrderProfit(); double AE = 0; ExtMapBuffer[0] = AccountBalance(); ExtMapBuffer[1] = AccountBalance(); { for(i=0; i<accTotal; i++) { if (!OrderSelect(accTotal-i-1,SELECT_BY_POS,MODE_HISTORY)) continue; if (OrderSymbol() != Symbol()) continue; if (OrderType() == 6) continue; AE += (OrderProfit() + OrderSwap()); } ExtMapBuffer[0] = AE; ExtMapBuffer[1] = AE; } j++; for(i=0; i<accTotal; i++) { if (OrderSelect(accTotal-i-1,SELECT_BY_POS,MODE_HISTORY)) { if ((OrderSymbol() != Symbol())) continue; ExtMapBuffer[j+1] = ExtMapBuffer[j] -OrderProfit(); j++; } } if(widtn_chart!=(int)ChartGetInteger(0,CHART_WIDTH_IN_PIXELS) || height_chart!=(int)ChartGetInteger(0,CHART_HEIGHT_IN_PIXELS)) { widtn_chart=(int)ChartGetInteger(0,CHART_WIDTH_IN_PIXELS); height_chart=(int)ChartGetInteger(0,CHART_HEIGHT_IN_PIXELS); Chart.CreateBitmapLabel("Chart",20,20,350,500,COLOR_FORMAT_ARGB_NORMALIZE); Chart.Erase(ColorToARGB(clrBlack)); Chart.Update(true); ArrayResize(ExtMapBuffer,tt); ArraySetAsSeries(ExtMapBuffer,true); ArrayResize(x_p,15); ArrayResize(y_p,15); } Chart.Erase(ColorToARGB(clrBlack)); //ask for(i=0; i<15; i++) { y_p[i]=int(100-500*(ExtMapBuffer[i])); if(i==0) x_p[i]=350-10; else x_p[i]=x_p[i-1]-20; Chart.FillCircle(x_p[i],y_p[i],3,ColorToARGB(clr_ask)); } Chart.Polyline(x_p,y_p,ColorToARGB(clr_ask)); //выводим на экран Chart.Update(true); return(0); } //+------------------------------------------------------------------+
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Всем привет! Есть советник mql5, отображает тики на графике через Canvas! Вот интересует вопрос... вместо тиков отображать текущий баланс и средства... как его реализовать? Да в рунете полно индикаторов и советников, но меня интересует как реализовать через Canvas)))
Пример тикового советника реализованного через Canvas polyline и FillCircle. Спасибо!