В общем столкнулся с тем, что нужно сделать разметку в MT5 предварительную, после чего сделать расчеты. Но так и не понял как это верно делать =( То есть у меня есть время, когда мне нужно нарисовать вертикальные линии, после чего горизонтальные и расчеты по ценам сделать. Даже Фибоначи туда подходит почти, правда все время не совпадает =(
Выходи из ситуации:
1. Советник?
2. Индикатор?
3. Еще что-то?
То есть это нечто вроде рисования и отчета, то есть после просто окошко с итогами, что получилось за определенный период. Но как это сделать на mql5 я понять не могу... Он сильно отличается от привычных более Delphi/php/VisualStudio...
к сожалению ничего :-(
у MT хромая проблема - положение/дистанции будущих баров Поэтому горизонтальные уровни вы ещё можете разметить, а вертикальные метки и тренды покажут "в молоко"
вы каждую неделю, в понедельник рано утром, должны корректировать разметку
Ничего не понял, но я вертикальные хочу выставить по времени. То есть буквально вписать туда 16:00 для графика GPB/JPY вертикальная линия красного цвета. Потом еще штук 4-5 таких же. Потом по ценам, которые получились построить горизонтальные линии. Далее уже рассчет по этим ценам...
Проблема в том, куда потом все это выводить? Тут нет как в том же Delphi возможности просто компонент добавить и вывести все на него =(
Ничего не понял, но я вертикальные хочу выставить по времени. То есть буквально вписать туда 16:00 для графика GPB/JPY вертикальная линия красного цвета. Потом еще штук 4-5 таких же. Потом по ценам, которые получились построить горизонтальные линии. Далее уже рассчет по этим ценам...
Проблема в том, куда потом все это выводить? Тут нет как в том же Delphi возможности просто компонент добавить и вывести все на него =(
выведите всё в Delphi раз вы его хорошо знаете.
Сейчас это скорее php, Delphi уже "не тот", а вот как я выведу? Как мне получить котировки по времени? API я так и не понял как работает и есть ли оно вообще ...
Delhi как Дельфи :-) Сейчас насколько знаю есть Лазарус и даже им пользуются и развивают.
К примеру - есть инструмент которым вы лично хорошо владеете. И сейчас сейчас заинтересовались Форекс.
У вас появился порог: одновременно надо разбираться с форекс(с рынком) и с прикладной/программной частью.."Боливар не вынесет двоих :-)"
Есть MT (или иной терминал) программную часть которого вы не знаете. Сделайте/найдите/закажите бридж к вашей системе. А то что наработается для эффективности потом можно перекинуть в MT.
Сделайте/найдите/закажите бридж к вашей системе.
Я про API... Ну то есть какой-то интерфейс программный, желательно, конечно универсальный вроде XML или подобного. Которого насколько я понял не существует... Только архивы можно выгружать оптом. Хотя в MT5 как бы есть выгрузка почти до текущего момента через его интерфейс, никакого API я не видел, так чтобы из PHP отправить POST/GET запрос к примеру...
Я об этом, что такое "бридж" я понятия не имею. Что это?
Там внизу даже код есть
https://www.mql5.com/ru/docs/constants/objectconstants/enum_object/obj_vline

- www.mql5.com

- www.mql5.com
Какой-то ерунды тут понаписали для ТС, кто-то из старичков сегодня выразился, что тут "форум программистов" ))) Ну-ну... Горе-программистов, зачем-то Дельфи приплели.... ТС, никого не слушайте, вот функции для вывода. Они, по идее, есть где-то в хелпе, но я взял из своего проекта, все работает и в MQL5, и в MQL4.
Думаю, сами приведете в нужный вид, я выложу, как есть.
long NumVLine = 0; double priceLine[10]; //значения цен //пример для вертикальных линий, рисовать можно абсолютно любые, хоть вертикальные, хоть наклонные void DrawVertLines(datetime tp1, datetime tp2) { // datetime tp1 = StringToTime(TimePoint1); // datetime tp2 = StringToTime(TimePoint2); string sname = MQLInfoString(MQL_PROGRAM_NAME) + IntegerToString(NumVLine++); string name = sname + "_v1"; TrendCreate(0, name, 0, tp1, priceLine[0], tp1, priceLine[4], clrCoral, STYLE_SOLID, 3); // первая верт. линия name = sname + "_v2"; TrendCreate(0, name, 0, tp2, priceLine[0], tp2, priceLine[4], clrCoral, STYLE_SOLID, 3); // вторая верт. линия } //+------------------------------------------------------------------+ //| Создает линию тренда по заданным координатам | //+------------------------------------------------------------------+ bool TrendCreate(const long chart_ID=0, // ID графика const string name="TrendLine", // имя линии const int sub_window=0, // номер подокна datetime time1=0, // время первой точки double price1=0, // цена первой точки datetime time2=0, // время второй точки double price2=0, // цена второй точки const color clr=clrRed, // цвет линии const ENUM_LINE_STYLE style=STYLE_SOLID, // стиль линии const int width=1, // толщина линии const bool back=false,//true, // на заднем плане const bool selection=false, // выделить для перемещений const bool ray_left=false, // продолжение линии влево const bool ray_right=false, // продолжение линии вправо const bool hidden=false, // скрыт в списке объектов const long z_order=0) // приоритет на нажатие мышью { //--- установим координаты точек привязки, если они не заданы //ChangeTrendEmptyPoints(time1,price1,time2,price2); //--- сбросим значение ошибки ResetLastError(); //--- создадим трендовую линию по заданным координатам if(!ObjectCreate(chart_ID,name,OBJ_TREND,sub_window,time1,price1,time2,price2)) { Print(__FUNCTION__, ": не удалось создать линию тренда! Код ошибки = ",GetLastError()); return(false); } //--- установим цвет линии ObjectSetInteger(chart_ID,name,OBJPROP_COLOR,clr); //--- установим стиль отображения линии ObjectSetInteger(chart_ID,name,OBJPROP_STYLE,style); //--- установим толщину линии ObjectSetInteger(chart_ID,name,OBJPROP_WIDTH,width); //--- отобразим на переднем (false) или заднем (true) плане ObjectSetInteger(chart_ID,name,OBJPROP_BACK,back); //--- включим (true) или отключим (false) режим перемещения линии мышью //--- при создании графического объекта функцией ObjectCreate, по умолчанию объект //--- нельзя выделить и перемещать. Внутри же этого метода параметр selection //--- по умолчанию равен true, что позволяет выделять и перемещать этот объект ObjectSetInteger(chart_ID,name,OBJPROP_SELECTABLE, false);//selection); ObjectSetInteger(chart_ID,name,OBJPROP_SELECTED, false);//selection); //--- включим (true) или отключим (false) режим продолжения отображения линии влево ObjectSetInteger(chart_ID,name,OBJPROP_RAY_LEFT,ray_left); //--- включим (true) или отключим (false) режим продолжения отображения линии вправо ObjectSetInteger(chart_ID,name,OBJPROP_RAY_RIGHT,ray_right); //--- скроем (true) или отобразим (false) имя графического объекта в списке объектов ObjectSetInteger(chart_ID,name,OBJPROP_HIDDEN,hidden); //--- установим приоритет на получение события нажатия мыши на графике ObjectSetInteger(chart_ID,name,OBJPROP_ZORDER,z_order); //--- успешное выполнение return true; }
Какой-то ерунды тут понаписали для ТС, кто-то из старичков сегодня выразился, что тут "форум программистов" ))) Ну-ну... Горе-программистов, зачем-то Дельфи приплели.... ТС, никого не слушайте, вот функции для вывода. Они, по идее, есть где-то в хелпе, но я взял из своего проекта, все работает и в MQL5, и в MQL4.
Думаю, сами приведете в нужный вид, я выложу, как есть.

- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
В общем столкнулся с тем, что нужно сделать разметку в MT5 предварительную, после чего сделать расчеты. Но так и не понял как это верно делать =( То есть у меня есть время, когда мне нужно нарисовать вертикальные линии, после чего горизонтальные и расчеты по ценам сделать. Даже Фибоначи туда подходит почти, правда все время не совпадает =(
Выходи из ситуации:
1. Советник?
2. Индикатор?
3. Еще что-то?
То есть это нечто вроде рисования и отчета, то есть после просто окошко с итогами, что получилось за определенный период. Но как это сделать на mql5 я понять не могу... Он сильно отличается от привычных более Delphi/php/VisualStudio...