Скачать MetaTrader 5

Предложение к разработчикам МТ.

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Проблемы с кодом? Загляни в документацию!
Forex Trader
114255
Forex Trader 2007.02.05 12:38 
У меня небольшое предложение к разработчикам МТ - добавить к графическим объектам прямоугольнику и эллипсу еще и параллелограмм. Для удобства - чтобы можно было красивые и наглядные картинки чертить.

Типа картинки что в аттаче.

Можно было бы конечно извратиться и заменять параллелограмм двумя треугольниками, но я думаю это совсем не сложно реализовать.

И еще такой вопрос - есть ли возможность с помощью горячей клавиши менять временной интервал при нахождении в режиме Full Screen? Если нет, то быть может и это было бы полезно добавить.

[img]http://forum.alpari-idc.ru/attachment.php?attachmentid=41006&d=1170430087[/img]
Forex Trader
114255
Forex Trader 2007.02.05 13:56  
Ваш параллелограмм - это два закрашенных треугольника. И именно этим все давно уже пользуются. Вряд ли разработчики будут вносить новый объект.

А вот насчёт горячих клавиш изменения масштаба при нахождении в полноэкранном режиме - это было бы замечательно! Ctrl+ и Ctrl- были бы очень удобны!
Forex Trader
114255
Forex Trader 2007.02.05 14:27  
Ваш параллелограмм - это два закрашенных треугольника. И именно этим все давно уже пользуются. Вряд ли разработчики будут вносить новый объект.

А вот насчёт горячих клавиш изменения масштаба при нахождении в полноэкранном режиме - это было бы замечательно! Ctrl+ и Ctrl- были бы очень удобны!




Да, использовать два треугольника это вариант, но было бы удобнее иметь отдельный объект. Его и программно использовать было бы удобнее.

Насчет горячих клавиш - в идеале хорошо бы иметь возможность самостоятельно настраивать эти сочетания.
Forex Trader
114255
Forex Trader 2007.02.05 22:43  
параллелограмм есть!!!


называется "равноудалённый канал"!
только фишечку "рисовать как фон" не забудьте воткнуть...
Forex Trader
114255
Forex Trader 2007.02.05 22:55  
И еще такой вопрос - есть ли возможность с помощью горячей клавиши менять временной интервал при нахождении в режиме Full Screen?

RTFM :)

нажимаете пробел, потом названия ТФ...

напр.:
" h4" = H4
" 5" = M5
" 15" = M15
Forex Trader
114255
Forex Trader 2007.02.06 06:57  
параллелограмм есть!!!


называется "равноудалённый канал"!
только фишечку "рисовать как фон" не забудьте воткнуть...

В принципе это какой-то выход из ситуации когда вам левая и правая сторона параллелограмма нужна строго вертикальной. А если они нужны вам к примеру горизонатльными или наклонными, то только треугольниками прийдётся раскрашивать.
Forex Trader
114255
Forex Trader 2007.02.06 09:07  

И еще такой вопрос - есть ли возможность с помощью горячей клавиши менять временной интервал при нахождении в режиме Full Screen? Если нет, то быть может и это было бы полезно добавить.


Чтобы изменить период без использования недоделанного меню (не все команды меню задействованы для быстрого перехода, всегда нужно пользоваться мыщью) можно воспользоваться функцией быстрого перехода - нажмите SPACE, или ENTER (появится эл.управления для ввода в нижнем левом углу), введите период в минутах (например 1440 для днёвки, 240 - 4 часа и т.д., максимум неделя - 10080), затем снова ENTER.

Этой функцией можно пользоваться и для других переходов. Например, если ввести дату, будет выполнена прокрутка представления, если наименование инструмента - eurusd, например, или eurusd,240 чтобы померять и период, то загрузятся его данные (только вероятно инструмент должен быть заказан в котировках). Можно поэксперементировать и дальше с этой функцией.

Что касается недостатков, то по-моему достоен внимания вопрос отображения трендовых линий. Если линия проведена на днёвке по точкам из истории, а вы пытаетесь наблюдать её положение на 15-ти минутном периоде сейчас, то правлильного значения линии вы не увидите. Нужно возращаться на большие периоды. Это касается и других не вертикальных и не горизонтальных объектов.
Forex Trader
114255
Forex Trader 2007.02.06 09:30  

Что касается недостатков, то по-моему достоен внимания вопрос отображения трендовых линий. Если линия проведена на днёвке по точкам из истории, а вы пытаетесь наблюдать её положение на 15-ти минутном периоде сейчас, то правлильного значения линии вы не увидите. Нужно возращаться на большие периоды. Это касается и других не вертикальных и не горизонтальных объектов.

А как вы представляете себе процесс хранения информации о линии, проведённой на D1? У неё ведь за координату X принимается время открытия бара D1, которое соответсвует времени 00:00 каждого дня! А после перехода на М15 может разумеется оказаться, что минимум этого дня пришёлся например на 13:45.

Наверное нужно в построение линий добавить опцию "Привязать точку к минимуму/максимуму дня". Да хотя эта добавка является сомнительным в плане того, что касательная линия тренда не всегда проходит именно по экстремуму, возможны варианты когда касательная трендовая линия проходит по точкам, которые экстремумами дня не являются. В общем вам самим проще в своём скрипте нарисовать всё что вам хочется, чем просить разработчиков добавлять разные навороты.
Forex Trader
114255
Forex Trader 2007.02.06 10:11  

А как вы представляете себе процесс хранения информации о линии, проведённой на D1? У неё ведь за координату X принимается время открытия бара D1, которое соответсвует времени 00:00 каждого дня! А после перехода на М15 может разумеется оказаться, что минимум этого дня пришёлся например на 13:45.

Если вы проводите линию, то известны точки, по которым вы её проводите. Кроме того, известы и все последующие и промежуточные точки этой линии, раз задыны две. Просто все эти точки без исключения должны иметь одинаковые значения без влияния периода времени. В MetaTrader'е имеет место ошибка масштабирования.

Обратите внимание например, на линии Фибоначи. Если построить этот объект на недельном периоде точно по вершинам и основаниям, то на меньшем периоде вертикальные точки будут верны, а горизонтальные нет, хоть это и не важно. Но для трендовых линий это важно. Скорее всего не предусмотрен просмотр результата на меньшем периоде - недоделка превращённая в ошибку.
Forex Trader
114255
Forex Trader 2007.02.06 10:19  
Если вы проводите линию, то известны точки, по которым вы её проводите. Кроме того, известы и все последующие и промежуточные точки этой линии, раз задыны две. Просто все эти точки без исключения должны иметь одинаковые значения без влияния периода времени. В MetaTrader'е имеет место ошибка масштабирования.

Вы видимо просто не разбираетесь в системе хранения данных в МТ4.
В МТ4 данные хранятся в виде O-H-L-C +время открытия бара и его объём.
Соответственно точное время самого минимума/максимума на периоде D1 отсутствует и нужна информация с младших таймфреймов для того, чтобы узнать точное время экстремума. То есть построив на периоде D1 линию у вас все точки будут иметь координаты по времени 00:00. Из-за этого линии тренда будут не совпадать с требуемыми на младших таймфреймах. Это разумеется разработчики изменять не будут.
Forex Trader
114255
Forex Trader 2007.02.06 10:37  

Вы видимо просто не разбираетесь в системе хранения данных в МТ4.
В МТ4 данные хранятся в виде O-H-L-C +время открытия бара и его объём.
Соответственно точное время самого минимума/максимума на периоде D1 отсутствует и нужна информация с младших таймфреймов для того, чтобы узнать точное время экстремума. То есть построив на периоде D1 линию у вас все точки будут иметь координаты по времени 00:00. Из-за этого линии тренда будут не совпадать с требуемыми на младших таймфреймах. Это разумеется разработчики изменять не будут.

Я не рпобовал реализовать эти линии на практике, рассуждаю теоретически. Хоть и знаком с форматом хранения данных о барах в файлах. В каждом файле сначала идёт заголовок - структура
struct CHistoryHeader
{
	int		version;            // версия базы
	char	copyright[64];      // копирайт
	char	symbol[12];         // инструмент
	int		period;             // период инструмента
	int		digits;             // число знаков после запятой в инструменте
	time_t	timesign;           // временной отпечаток создания базы
	time_t	last_sync;          // время последней синхронизации
	int		unused[13];         // для будущего использования
	CHistoryHeader(){memset(this, 0, sizeof(CHistoryHeader));}
	int PeriodInSeconds(const time_t time) const;
};


затем последовательность структур

struct CRateInfo
{
	time_t	m_time;           // текущее время в секундах
	double	m_open;           // цена открытия
	double	m_low;            // цена m_low
	double	m_high;           // цена m_high
	double	m_close;          // цена закрытия
	double	m_volume;         // объем
};


И если вы хотите отобразить линию на меньшем периоде, то по-моему (так-же как и по-вашему) нужно найти в последовательности баров меньшего периода, ограниченной временем одного бара большего периода значение, по которому и построен изначально объект. В отличии от метода, видимо реализованного на данный момент в приложении, который верояно подразумевает значение открытия бара большего периода, а не значение, заданное пользователем.

123
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий