Страница 1 из 1

Скрипт для установки уровней

СообщениеДобавлено: 24 июн 2009, 11:42
Bratus
Назначение скрипта SetLevels: установка на график цены уровней из заранее подготовленного файла.
Файл ищется в каталоге \experts\files\
Имя файла должно иметь след. вид: <два первых символа названия фин. инструмента>.txt
Т.е. для фьючерса на евро (сейчас название фин. инструмента "6EU9") имя файла должно быть "6E.txt".
Для фьючерса на S&P500 (сейчас название фин. инструмента "ESU9") имя файла должно быть "ES.txt".

Формат файла.
Файл состоит из 4-х полей, разделённых ;

Первое поле - тип уровня.
Возможные типы: K - уровень контракта, M - уровень месяца, WL - уровень прошлой недели, WC - уровень текущей недели,
D - уровень дня, S - уровень сессии, P - уровень точечный. Тип уровня можно писать маленькими и большими буквами.

Второе поле - цена, на которой нужно установить уровень. РАЗДЕЛИТЕЛЬ ЦЕЛОЙ И ДРОБНОЙ ЧАСТИ - ТОЧКА ! ! ! !

Третье поле - дата, с которой нужно установить уровень. Формат поля: "ГГГГ.ММ.ДД ЧЧ:ММ". Можно часы и минуты пропустить.

Четвёртое поле - объёмы на уровне. Это поле вписывается в комментарий к уровню.

Алгоритм работы скрипта.
При запуске скрипта он ищет файл с соотв. именем.
Можно установить для уровня цвет линии и стиль рисования. Для уровня контракта, месяца и прошлой недели такой настройки нет,
т.к. предполагается рисовать эти уровни толстой горизонтальной линией (при толщине > 1 невозможно установить стиль),
а все остальные - трендовой линией со свойством "луч".
При установке нового уровня предварительно удаляется уровень с таким же именем!
Некоторые информационные сообщения выводятся во вкладку "Эксперты" терминала.


Если у вас появяться предложения, дополнения по доработке скрипта, то пишите.

Re: Скрипт для установки уровней

СообщениеДобавлено: 25 июн 2009, 03:30
Ardi
Привет, Братус. Спасибо за скрипт
Хотел переделать, не получилось... а вот что хотел:
- чтобы уровни прорисовывались только на один день - те ray false,
- чтобы прошлые уровни не удалялись,
- добавить в типах уровней кол и пут,
- позволить выбирать, какие уровни отображать, какие нет,
- ну и алерт при входе +-n пунктов в зону уровня для полноты картины (а там глядишь и ордера может
ставить скрипт начнет ;)).

Вот вроде, буду признателен за новую версию, буду ждать

Re: Скрипт для установки уровней

СообщениеДобавлено: 26 июн 2009, 09:24
seregadsa
Доброго дня!Скажите,как заранее подготовить файл,откуда брать данные для файла?

Re: Скрипт для установки уровней

СообщениеДобавлено: 26 июн 2009, 14:19
Bratus
Ardi: я подумаю над модернизацией. Насчёт установки ордеров: такое в скрипте сделать не получиться, т.к. скрипт отработал и закрылся. Он не висит постоянно в терминале как советник и индикатор. Но если очень будет нужно сделать, то можно переделать в советника.

seregadsa: автоматической подготовки данных для скрипта не предусматривается. Данные по объёмам можно взять с https://trading-evolution.com (там есть кнопки Last day, This week, Last week, и т.д. ) Сессионный максимум можно посмотреть используя индикатор Плюса "+VL", который можно скачать здесь https://fxequity.ru/indikatory-plyusa/#more-139

Re: Скрипт для установки уровней

СообщениеДобавлено: 04 июл 2009, 20:59
Bratus
Доработал свой скрипт для установки уровней. Все пожелания учтены.

Назначение скрипта SetLevels: установка на график цены уровней из заранее подготовленного файла.
Файл ищется в каталоге \experts\files\
Имя файла должно иметь след. вид: <два первых символа названия фин. инструмента>.txt
Т.е. для фьючерса на евро (сейчас название фин. инструмента "6EU9") имя файла должно быть "6E.txt".
Для фьючерса на S&P500 (сейчас название фин. инструмента "ESU9") имя файла должно быть "ES.txt".
МОЖНО СОЗДАТЬ ФАЙЛ ДЛЯ ЛЮБОГО ФИН. ИНСТРУМЕНТА!

Формат файла.
Файл состоит из 4-х полей, разделённых ; (исключение дневной уровень; см. ниже)

Первое поле - тип уровня.
Возможные типы: K - уровень контракта, M - уровень месяца, WL - уровень прошлой недели, WC - уровень текущей недели,
D - уровень дня, S - уровень сессии, P - уровень точечный. Тип уровня можно писать маленькими или большими буквами.

Второе поле - цена, на которой нужно установить уровень. РАЗДЕЛИТЕЛЬ ЦЕЛОЙ И ДРОБНОЙ ЧАСТИ - ТОЧКА ! ! ! !

Третье поле - дата, с которой нужно установить уровень. Формат поля: "ГГГГ.ММ.ДД ЧЧ:ММ". Можно часы и минуты пропустить.

Четвёртое поле - комментарий к уровню. Можно написать сюда что угодно. Это поле вписывается в комментарий к уровню.

Пятое поле - тип дневного уровня. Это поле опционное! ВОЗМОЖНО ТОЛЬКО ДЛЯ ДНЕВНЫХ УРОВНЕЙ (первое поле = "D").
Возможные значения: "CALL" и "PUT" (можно писать маленькими или большими буквами). В зависимости от типа, этот уровень рисуется соотв. цветом.

При запуске скрипта он ищет файл с соотв. именем.
При установке нового уровня предварительно удаляется уровень с таким же именем!
Некоторые информационные сообщения выводятся во вкладку "Эксперты" терминала.

Параметры:
Show. Если = false, то уровень с соотв. типом не рисуется
Type. 0 - горизонтальная линия, 1 - трендовая линия со свойством "Луч", 2 - трендовая линия БЕЗ свойства "Луч" (отрезок)
Color. Цвет уровня с соотв. типом. Для дневного уровня 2 цвета: DPutColor и DCallColor
Style. Стиль рисования уровня.
STYLE_SOLID = 0 - СПЛОШНАЯ ЛИНИЯ
STYLE_DASH = 1 - ШТРИХОВАЯ ЛИНИЯ
STYLE_DOT = 2 - ПУНКТИРНАЯ ЛИНИЯ
STYLE_DASHDOT = 3 - ШТРИХ-ПУНКТИРНАЯ ЛИНИЯ
STYLE_DASHDOTDOT = 4 - ШТРИХ-ПУНКТИРНАЯ ЛИНИЯ С ДВОЙНЫМИ ТОЧКАМИ
Если ширина (толщина) рисования уровня установлена > 1, то стиль рисования уровня автоматически устанавливается в STYLE_SOLID (особенности MT4)
Width. Ширина (толщина) рисования уровня.

ЕЩЁ ОДНО ОЧЕНЬ ВАЖНОЕ ЗАМЕЧАНИЕ.
MQL4 РАБОТАЕТ ПОЧЕМУ-ТО ТАК, ЧТО ПРИ РАЗБОРЕ ТЕКСТОВОГО ФАЙЛА ЕМУ ОБЯЗАТЕЛЬНО В КОНЦЕ НУЖНЫ ПУСТЫЕ СТРОКИ!
ЕСЛИ ИХ НЕТ ТО СКРИПТ ПРИ ЧТЕНИИ ФАЙЛА С УРОВНЯМИ ПОДВИСНЕТ!

Если у вас появяться предложения, дополнения по доработке скрипта, то пишите.