fadedbckgrnd2__1.mq5
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «fadedbckgrnd2__1.mq5» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
Индикатор для платформы MetaTrader 5, предназначенный для отрисовки градиентного фона на графике цены. Он создаёт набор прямоугольников, заполняющих видимую область графика, с плавным переходом цвета от верхней до нижней границы. Параметры позволяют настроить цвета, количество переходов и поведение отображения.
В основе работы лежит создание графических объектов типа OBJ_RECTANGLE на каждом шаге градиента. Прямоугольники позиционируются по времени и цене, используя данные видимой части графика: максимальный и минимальный уровень цены, а также первый видимый бар. Объекты рисуются на заднем плане, не перекрывая торговые данные.
Индикатор поддерживает два переключателя: принудительного обновления котировок и распространения градиента до конца графика. При деинициализации все созданные прямоугольники удаляются с графика. Исходный код содержит стиль MQL4, адаптированный под среду MQL5.
Настройки программы
| Настройка | Описание |
|---|---|
| topcol | Цвет верхней границы градиента в формате R,G,B (по умолчанию чёрный). |
| bottomcol | Цвет нижней границы градиента в формате R,G,B (по умолчанию синий). |
| steps | Количество шагов (полос) градиента, определяющее плавность перехода цвета. |
| a7 | Текстовый параметр, содержащий служебную строку, связанную с функцией обновления данных. |
| ForceRefresh | При активации инициирует принудительное обновление котировочных данных. |
| ExtendToEnd | Распространяет градиентный фон до правого края графика, если включён режим сдвига графика. |
Поиск по коду файла
#property indicator_chart_window
#import "stdlib.ex4"
int RGB(int red_value,int green_value,int blue_value);
double top, bottom;
datetime left;
int right_bound;
datetime right;
extern string topcol ="000,000,000";
extern string bottomcol ="000,000,255";
int r,g,b;
extern int steps =20;
extern string a7="Force Refresh of data";
extern bool ForceRefresh=FALSE;
extern bool ExtendToEnd=true;
int init()
{
// код доступен только после оплаты
}
int deinit()
{
for(int x=1;x<=steps;x++)
{
ObjectDelete("Padding_rect"+x);
}
return(0);
}
int start()
{
// код доступен только после оплаты
}
int counted_bars=IndicatorCounted();
top = WindowPriceMax();
bottom = WindowPriceMin();
left = Time[WindowFirstVisibleBar()];
right_bound=WindowFirstVisibleBar()-WindowBarsPerChart();
int addToRight = (ExtendToEnd &&ChartGetInteger(0,CHART_SHIFT)==1) ? -right_bound : 0;
if(right_bound<0) right_bound=0;
right=Time[right_bound]+(addToRight+1)*_Period*60;
for(int x=1;x<=steps;x++)
{
if(ObjectFind("Padding_rect"+x) ==-1) ObjectCreate("Padding_rect"+x,OBJ_RECTANGLE,0,left,top-((top-bottom)/steps)*(x-1),right,top-((top-bottom)/steps)*(x));
ObjectSet("Padding_rect"+x, OBJPROP_TIME1, left);
ObjectSet("Padding_rect"+x, OBJPROP_TIMEПоказано первые 50% кода (символов: 2023)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.