ShadeNY
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «shadeny.mq5» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
ShadeNY — это пользовательский индикатор для MetaTrader 4, предназначенный для визуальной подсветки торговых сессий на графике. Индикатор закрашивает области графика, соответствующие определённым торговым сессиям, на таймфреймах от M1 до H4. Подсветка применяется с помощью прямоугольных объектов, рисуемых непосредственно на графике цены.
Индикатор обрабатывает события новых тиков и обновляет прямоугольник текущей (активной) сессии по мере поступления данных. При деинициализации все созданные объекты удаляются с графика. Максимальное количество дней, отображаемых подсветкой, ограничено настройкой.
Цвет закрашенных областей настраивается пользователем. Индикатор не предназначен для таймфреймов выше H4.
Настройки программы
| Настройка | Описание |
|---|---|
| ShadeColor | Цвет подсветки — Цвет закрашенных областей торговых сессий на графике. |
Поиск по коду файла
#property indicator_chart_window
extern color ShadeColor=Yellow;
/*
#define NY_OPEN_HH 17 // NY session open hour
#define NY_OPEN_MM 30 // NY session open minutes
#define NY_CLOSE_HH 00 // NY session close hour
#define NY_CLOSE_MM 05 // NY session close minutes
*/
#define NY_OPEN_HH 14 // NY session open hour
#define NY_OPEN_MM 30 // NY session open minutes
#define NY_CLOSE_HH 21 // NY session close hour
#define NY_CLOSE_MM 05 // NY session close minutes
/*
#define NY_OPEN_HH 08 // NY session open hour
#define NY_OPEN_MM 30 // NY session open minutes
#define NY_CLOSE_HH 14 // NY session close hour
#define NY_CLOSE_MM 05 // NY session close minutes
*/
#define MAX_DAYS_TO_SHADE 5 // maximum number of days back from last chart date to be shaded
string obj[]; //array of object names
int iPrevious=0, iStart=-1, iEnd;
double dLow, dHigh;
int init()
{
// код доступен только после оплаты
}
if(Period()>PERIOD_H4) return(0); // no shading required
int iMaxBarsOnChart=iBars(NULL,0), i, iBarDay, iBarTime;
int iBarsToDo=MathMin((MAX_DAYS_TO_SHADE*PERIOD_D1)/Period(),iMaxBarsOnChart);
for(i=iBarsToDo; i<iMaxBarsOnChart; i++)
{
iBarDay=TimeYear(Time[i])*PERIOD_MN1*12+TimeMonth(Time[i])*PERIOD_MN1+TimeDay(Time[i])*PERIOD_D1;
iBarTime=iBarDay+TimeHour(Time[i])*60+TimeMinute(Time[i]);
if(iBarTime>=iBarDay+NY_OPEN_HH*60+NY_OPEN_MM && iBarTime<=iBarDay+NY_CLOSE_HH*60+NY_CLOSE_MM) iStart=i;
else if(iStart>-1) break;
}
if(iStart>-1) iBarsToDo=iStart;
iStart=-1;
for(i=iBarsToDo; i>=0; i--)
{
iBarDay=TimeYear(Time[i])*PERIOD_MN1*12+TimeMonth(Time[i])*PERIOD_MN1+TimeDay(Time[i])*PERIOD_D1;
iBarTime=iBarDay+TimeHour(Time[i])*60+TimeMinute(Time[i]);
if(iBarTime>=iBarDay+NY_OPEN_HH*60+NY_OPEN_MM && iBarTime<=iBarDay+NY_CLOSE_HH*60+NY_CLOSE_MM)
{
if(iBarDay==iPrevious) // current NY session
{
dLow =MathMin(Показано первые 50% кода (символов: 2883)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.