FiguresCandle
Похожие материалы по тегам
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «figures-candle-indicator.mq5» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
FiguresCandle — это пользовательский индикатор для MetaTrader 4, предназначенный для обнаружения и визуального маркирования классических свечных паттернов на ценовых графиках. Индикатор анализирует соотношения тел и теней свечей, а также краткосрочные тренды на основе скользящих средних, чтобы идентифицировать ряд разворотных и продолжательных фигур.
При обнаружении паттерна индикатор отрисовывает на графике графические объекты, выделяющие свечи, а также текстовые метки с названием фигуры и временной меткой. Для бычьих и медвежьих паттернов используются настраиваемые цвета, что позволяет трейдеру быстро ориентироваться в разметке.
Индикатор поддерживает звуковые уведомления при появлении нового паттерна на текущем баре. Визуальная отрисовка графических элементов может быть включена или отключена отдельной настройкой. Все основные параметры доступны через внешние настройки диалога.
Индикатор работает в окне графика, использует два буфера для отрисовки стрелок-меток и совместим с стандартной платформой MetaTrader 4. Расчёт выполняется на каждом обновлении цены с учётом уже посчитанных баров для оптимизации производительности.
Настройки программы
| Настройка | Описание |
|---|---|
| AlertON | Включить уведомления — Включает или отключает звуковые уведомления при обнаружении нового свечного паттерна. |
| colorBulls | Цвет бычьих паттернов — Цвет графических маркеров и подписей для бычьих свечных паттернов. |
| colorBears | Цвет медвежьих паттернов — Цвет графических маркеров и подписей для медвежьих свечных паттернов. |
| DrawCandle | Отрисовка свечей — Включает или отключает отрисовку графических объектов, выделяющих свечи паттерна на графике. |
Поиск по коду файла
#property indicator_chart_window
#property indicator_buffers 2
#property indicator_color1 Blue
#property indicator_color2 Red
#property indicator_width1 1
#property indicator_width2 1
extern bool AlertON = true;
extern color colorBulls = Blue;
extern color colorBears = Red;
extern bool DrawCandle = true;
double BufferUP[],P;
double BufferDN[];
int candle[],Timei;
color Color;
int init()
{
// код доступен только после оплаты
}
int deinit()
{
ObjectsDeleteAll(0,OBJ_TREND);
ObjectsDeleteAll(0,OBJ_TEXT);
return(0);
}
int start()
{
// код доступен только после оплаты
}
string NameFigur;
int counted_bars=IndicatorCounted();
if(counted_bars<0) return(-1);
if(counted_bars>0) counted_bars--;
int limit=Bars-counted_bars;
if(counted_bars==0) limit-=1+2;
for(int i=1; i<limit; i++)
{
bool up=false,down=false;
double MA0 = iMA(NULL,0,5,0,MODE_EMA,PRICE_CLOSE,i);
double MA1 = iMA(NULL,0,5,0,MODE_EMA,PRICE_CLOSE,i);
double MA2 = iMA(NULL,0,5,0,MODE_EMA,PRICE_CLOSE,i+1);
double MA3 = iMA(NULL,0,5,0,MODE_EMA,PRICE_CLOSE,i+2);
if(MA0>MA1 && MA1>MA2 && MA2>MA3) up=true;
else up=false;
if(MA0<MA1 && MA1<MA2 && MA2<MA3) down=true;
else down=false;
NameFigur="";
if(Close[i]>Close[i+1] && Close[i]>Open[i+1])
{
if(down && Open[i+1]>Close[i+1] && Open[i]>Close[i+1] && Close[i]<Open[i+1] && Close[i]>Open[i])
{
NameFigur="BullHarami";
Redraw(i,colorBulls,NameFigur); Redraw(i+1,colorBulls,NameFigur);
}
if(Open[i+1]>Close[i+1] && Open[i]>Close[i+1] && Open[i]<Open[i+1] && Close[i]>Open[i+1])
{
NameFigur="BullCross";
Redraw(i,colorBulls,NameFigur); Redraw(i+1,colorBulls,NameFigur);
}
if(Close[i+1]<Open[i+1] && Open[i]<Close[i+1] && Close[i]>Open[i+1])
{
NameFigur="Bullish Engulfing";
if(Close[i+1]<Open[i+1] && Close[i]>Open[i] && Open[i]<Close[i+1] && Close[i]>Close[i+1]+((Open[i+1]-Close[i+1])/2))
{
NameFigur="BullPierce";
}
Redraw(i,colorBulls,NameFigur); Redraw(i+1,colorBulls,NameFigur);
}
if(Close[i+2]<Open[i+2] && Open[i+1]<Close[i+2] && Close[i+1]<Close[i+2] && Open[i]>Close[i+1] && Open[i]>Open[i+1] && Close[i]>=Close[i+2])
{
NameFigur="Morning Star";
Redraw(i,colorBulls,NameFigur); Redraw(i+1,colorBulls,NameFigur); Redraw(i+2,colorBulls,NameFigur);
}
}
if(Open[i]-Low[i]>MathMax(High[i]-Close[i],Close[i]-Open[i])*3 && Close[i]-Low[i]>MathMax(High[i]-Close[i],Close[i]-Open[i])*3)
{
NameFigur="Hammer";
if(up) {Redraw(i,colorBulls,NameFigur); Redraw(i+1,colorBulls,NameFigur);}
if(down) {Redraw(i,colorBears,NameFigur); Redraw(i+1,colorBears,NameFigur);}
}
if(Close[i]<Close[i+1] && Close[i]<Open[i+1])
{
if(up && Open[i+1]<Close[i+1] && OПоказано первые 50% кода (символов: 5215)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.