RsiOma_Db
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «rsioma_db_v1_03.mq5» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
RsiOma_Db — пользовательский индикатор для MetaTrader 5, который выводит на график сводную панель состояния сигналов внешнего индикатора RSIOMA (2) по нескольким таймфреймам. Индикатор не выполняет торговых операций и не строит собственную кривую: он периодически считывает значения внешнего индикатора через iCustom и отображает результат в виде набора текстовых меток и графических значков в окне графика.
Панель формируется по таймфреймам, которые можно включать и выключать настройками showMonth, showWeek, showDay, showH4, showH1, showM30, showM15, showM5 и showM1. Для каждого включённого таймфрейма выводится буквенная метка, цветной квадрат и стрелка, отражающие текущее состояние сигнала. Внешний вид панели настраивается параметрами xAnchor, yAnchor, fontSize, squareSize, squareSpace, textColor, xOutline, arrowOutlineX и arrowOutlineY.
Обновление данных выполняется по таймеру с интервалом UpdateTimerInSeconds. Дополнительно индикатор может отслеживать пересечения уровней на M5 при включённом M5_RsiOma_Crossing_Enabled и выдавать предупреждение Alert. Параметры NbrOfBarsForCrossing, b80Level, _d80Level и _d50Level управляют условиями этого контроля. Для корректной работы требуется наличие внешнего индикатора RSIOMA (2).ex4, а параметр objectpreamble задаёт уникальный префикс имён объектов, чтобы несколько экземпляров индикатора на одном графике не конфликтовали.
Настройки программы
| Настройка | Описание |
|---|---|
| _Comment | Комментарий — Информационная строка, поясняющая необходимость наличия внешнего индикатора RSIOMA (2).ex4. |
| _Comment_2 | Комментарий 2 — Информационная строка, напоминающая, что префикс объектов должен быть уникальным для каждого экземпляра на графике. |
| objectpreamble | Префикс объектов — Уникальный префикс имён графических объектов, позволяющий нескольким экземплярам индикатора работать на одном графике без конфликтов. |
| UpdateTimerInSeconds | Интервал обновления, сек — Интервал в секундах, с которым таймер обновляет данные панели. |
| chartId | Идентификатор графика — Идентификатор графика, для которого создаются объекты панели. |
| showMonth | Показывать месяц — Включает или отключает отображение состояния сигнала по месячному таймфрейму. |
| showWeek | Показывать неделю — Включает или отключает отображение состояния сигнала по недельному таймфрейму. |
| showDay | Показывать день — Включает или отключает отображение состояния сигнала по дневному таймфрейму. |
| showH4 | Показывать H4 — Включает или отключает отображение состояния сигнала по четырёхчасовому таймфрейму. |
| showH1 | Показывать H1 — Включает или отключает отображение состояния сигнала по часовому таймфрейму. |
| showM30 | Показывать M30 — Включает или отключает отображение состояния сигнала по тридцатиминутному таймфрейму. |
| showM15 | Показывать M15 — Включает или отключает отображение состояния сигнала по пятнадцатиминутному таймфрейму. |
| showM5 | Показывать M5 — Включает или отключает отображение состояния сигнала по пятиминутному таймфрейму. |
| showM1 | Показывать M1 — Включает или отключает отображение состояния сигнала по минутному таймфрейму. |
| useSignalsRank | Использовать ранжирование сигналов — Включает или отключает учёт ранжирования сигналов при отображении состояния панели. |
| xAnchor | Позиция по X — Горизонтальная позиция панели на графике. |
| yAnchor | Позиция по Y — Вертикальная позиция панели на графике. |
| fontSize | Размер шрифта — Размер шрифта для текстовых меток панели. |
| squareSize | Размер квадрата — Размер квадратных значков панели. |
| squareSpace | Расстояние между квадратами — Расстояние между соседними значками панели по горизонтали. |
| textColor | Цвет текста — Цвет текстовых меток панели. |
| xOutline | Смещение квадратов по X — Горизонтальное смещение квадратных значков относительно базовой позиции. |
| arrowOutlineX | Смещение стрелок по X — Горизонтальное смещение стрелок панели относительно базовой позиции. |
| arrowOutlineY | Смещение стрелок по Y — Вертикальное смещение стрелок панели относительно базовой позиции. |
| M5_RsiOma_Crossing_Enabled | Контроль пересечений на M5 — Включает или отключает контроль пересечений уровней на таймфрейме M5 с выдачей предупреждения. |
| NbrOfBarsForCrossing | Число баров для пересечения — Количество последних баров, учитываемых при проверке условий пересечения на M5. |
| b80Level | Использовать уровень 80 — Переключает режим контроля пересечений между уровнем 80 и уровнем 50. |
| _d80Level | Уровень 80 — Числовое значение уровня 80, используемое при контроле пересечений. |
| _d50Level | Уровень 50 — Числовое значение уровня 50, используемое при контроле пересечений, когда контроль по уровню 80 отключён. |
Поиск по коду файла
#property version "1.00"
#property strict
#property indicator_chart_window
sinput string _Comment="RSIOMA (2).ex4 is needed";
sinput string _Comment_2="Preamble must be unique for evere instance in chart";
sinput string objectpreamble="rsioma_db_";
sinput int UpdateTimerInSeconds=5;
sinput long chartId=0;
sinput bool showMonth= false;
sinput bool showWeek = true;
sinput bool showDay= true;
sinput bool showH4 = true;
sinput bool showH1 = true;
sinput bool showM30 = false;
sinput bool showM15 = true;
sinput bool showM5 = true;
sinput bool showM1 = false;
sinput bool useSignalsRank=false;
sinput int xAnchor = 1250;
sinput int yAnchor = 200;
sinput int fontSize= 6;
sinput int squareSize=14;
sinput int squareSpace=5;
sinput color textColor=clrOrange;
sinput int xOutline=3;
sinput int arrowOutlineX = 3;
sinput int arrowOutlineY = 3;
double multiplier=1.65;
sinput bool M5_RsiOma_Crossing_Enabled=true;
sinput int NbrOfBarsForCrossing=1;
sinput bool b80Level=true;
sinput double _d80Level = 80.0;
sinput double _d50Level = 50.0;
int yOffsetArrow;
string preamble;
static datetime _M5Crossing=0;
double tmpValue_1,tmpValue_2,tmpValue_3,tmpValue_4,tmpValue_5,tmpValue_6;
int OnInit()
{
// код доступен только после оплаты
}
void OnDeinit(const int reason)
{
EventKillTimer();
string name;
string s=preamble;
for(int i=ObjectsTotal()-1; i>=0; i--)
{
name=ObjectName(i);
if(StringSubstr(name,0,StringLen(s))==s)
{
ObjectDelete(name);
}
}
}
int OnCalculate(const int rates_total,
const int prev_calculated,
const datetime &time[],
const double &open[],
const double &high[],
const double &low[],
const double &close[],
const long &tick_volume[],
const long &volume[],
const int &spread[])
{
// код доступен только после оплаты
}
void OnTimer()
{
int xOffset = xAnchor;
int yOffset = yAnchor;
if(showMonth)
{
tmpValue_1 = iCustom(Symbol(),PERIOD_MN1,"RSIOMA (2)", 0, 0);
tmpValue_2 = iCustom(Symbol(),PERIOD_MN1,"RSIOMA (2)", 5, 0);
tmpValue_3 = iCustom(Symbol(),PERIOD_MN1,"RSIOMA (2)", 0, 1);
SetText(chartId,preamble+"MN1_label_"+Symbol(),"M",xOffset,yOffset,textColor,fontSize);
if((tmpValue_1>tmpValue_2 || !useSignalsRank) && tmpValue_1>80.0)
{
SetObjText(chartId,preamble+"square_MN1_"+Symbol(),CharToStr(110),xOffset-xOutline,yOffset+fontSize+4,clrLime,squareSize);
if(tmpValue_1>tmpValue_3)
{
SetObjText(chartId,preamble+"arrow_MN1_"+Symbol(),CharToStr(233),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier,clrLime,fontSize);
}
else if(tmpValue_1<tmpValue_3)
{
SetObjText(chartId,preamble+"arrow_MN1_"+Symbol(),CharToStr(234),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier+yOffsetArrow,clrRed,fontSize);
}
else
{
SetObjText(chartId,preamble+"arrow_MN1_"+Symbol(),CharToStr(243),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier,clrOrange,fontSize);
}
}
else if((tmpValue_1>tmpValue_2 || !useSignalsRank) && tmpValue_1>50.0)
{
SetObjText(chartId,preamble+"square_MN1_"+Symbol(),CharToStr(110),xOffset-xOutline,yOffset+fontSize+4,clrGreen,squareSize);
if(tmpValue_1>tmpValue_3)
{
SetObjText(chartId,preamble+"arrow_MN1_"+Symbol(),CharToStr(233),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier,clrLime,fontSize);
}
else if(tmpValue_1<tmpValue_3)
{
SetObjText(chartId,preamble+"arrow_MN1_"+Symbol(),CharToStr(234),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier+yOffsetArrow,clrRed,fontSize);
}
else
{
SetObjText(chartId,preamble+"arrow_MN1_"+Symbol(),CharToStr(243),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier,clrOrange,fontSize);
}
}
else if((tmpValue_1<tmpValue_2 || !useSignalsRank) && tmpValue_1<20.0)
{
SetObjText(chartId,preamble+"square_MN1_"+Symbol(),CharToStr(110),xOffset-xOutline,yOffset+fontSize+4,clrRed,squareSize);
if(tmpValue_1>tmpValue_3)
{
SetObjText(chartId,preamble+"arrow_MN1_"+Symbol(),CharToStr(233),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier,clrLime,fontSize);
}
else if(tmpValue_1<tmpValue_3)
{
SetObjText(chartId,preamble+"arrow_MN1_"+Symbol(),CharToStr(234),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier+yOffsetArrow,clrRed,fontSize);
}
else
{
SetObjText(chartId,preamble+"arrow_MN1_"+Symbol(),CharToStr(243),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier,clrOrange,fontSize);
}
}
else if((tmpValue_1<tmpValue_2 || !useSignalsRank) && tmpValue_1<50.0)
{
SetObjText(chartId,preamble+"square_MN1_"+Symbol(),CharToStr(110),xOffset-xOutline,yOffset+fontSize+4,clrOrange,squareSize);
if(tmpValue_1>tmpValue_3)
{
SetObjText(chartId,preamble+"arrow_MN1_"+Symbol(),CharToStr(233),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier,clrLime,fontSize);
}
else if(tmpValue_1<tmpValue_3)
{
SetObjText(chartId,preamble+"arrow_MN1_"+Symbol(),CharToStr(234),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier+yOffsetArrow,clrRed,fontSize);
}
else
{
SetObjText(chartId,preamble+"arrow_MN1_"+Symbol(),CharToStr(243),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier,clrOrange,fontSize);
}
}
else
{
SetObjText(chartId,preamble+"square_MN1_"+Symbol(),CharToStr(110),xOffset-xOutline,yOffset+fontSize+4,clrGray,squareSize);
if(tmpValue_1>tmpValue_3)
{
SetObjText(chartId,preamble+"arrow_MN1_"+Symbol(),CharToStr(233),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier,clrLime,fontSize);
}
else if(tmpValue_1<tmpValue_3)
{
SetObjText(chartId,preamble+"arrow_MN1_"+Symbol(),CharToStr(234),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier+yOffsetArrow,clrRed,fontSize);
}
}
xOffset=xOffset+squareSize+squareSpace;
}
if(showWeek)
{
tmpValue_1 = iCustom(Symbol(),PERIOD_W1,"RSIOMA (2)", 0, 0);
tmpValue_2 = iCustom(Symbol(),PERIOD_W1,"RSIOMA (2)", 5, 0);
tmpValue_3 = iCustom(Symbol(),PERIOD_W1,"RSIOMA (2)", 0, 1);
SetText(chartId,preamble+"W1_label_"+Symbol(),"W",xOffset,yOffset,textColor,fontSize);
if((tmpValue_1>tmpValue_2 || !useSignalsRank) && tmpValue_1>80.0)
{
SetObjText(chartId,preamble+"square_W1_"+Symbol(),CharToStr(110),xOffset-xOutline,yOffset+fontSize+4,clrLime,squareSize);
if(tmpValue_1>tmpValue_3)
{
SetObjText(chartId,preamble+"arrow_W1_"+Symbol(),CharToStr(233),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier,clrLime,fontSize);
}
else if(tmpValue_1<tmpValue_3)
{
SetObjText(chartId,preamble+"arrow_W1_"+Symbol(),CharToStr(234),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier+yOffsetArrow,clrRed,fontSize);
}
else
{
SetObjText(chartId,preamble+"arrow_W1_"+Symbol(),CharToStr(243),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier,clrOrange,fontSize);
}
}
else if((tmpValue_1>tmpValue_2 || !useSignalsRank) && tmpValue_1>50.0)
{
SetObjText(chartId,preamble+"square_W1_"+Symbol(),CharToStr(110),xOffset-xOutline,yOffset+fontSize+4,clrGreen,squareSize);
if(tmpValue_1>tmpValue_3)
{
SetObjText(chartId,preamble+"arrow_W1_"+Symbol(),CharToStr(233),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier,clrLime,fontSize);
}
else if(tmpValue_1<tmpValue_3)
{
SetObjText(chartId,preamble+"arrow_W1_"+Symbol(),CharToStr(234),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier+yOffsetArrow,clrRed,fontSize);
}
else
{
SetObjText(chartId,preamble+"arrow_W1_"+Symbol(),CharToStr(243),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier,clrOrange,fontSize);
}
}
else if((tmpValue_1<tmpValue_2 || !useSignalsRank) && tmpValue_1<20.0)
{
SetObjText(chartId,preamble+"square_W1_"+Symbol(),CharToStr(110),xOffset-xOutline,yOffset+fontSize+4,clrRed,squareSize);
if(tmpValue_1>tmpValue_3)
{
SetObjText(chartId,preamble+"arrow_W1_"+Symbol(),CharToStr(233),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier,clrLime,fontSize);
}
else if(tmpValue_1<tmpValue_3)
{
SetObjText(chartId,preamble+"arrow_W1_"+Symbol(),CharToStr(234),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier+yOffsetArrow,clrRed,fontSize);
}
else
{
SetObjText(chartId,preamble+"arrow_W1_"+Symbol(),CharToStr(243),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier,clrOrange,fontSize);
}
}
else if((tmpValue_1<tmpValue_2 || !useSignalsRank) && tmpValue_1<50.0)
{
SetObjText(chartId,preamble+"square_W1_"+Symbol(),CharToStr(110),xOffset-xOutline,yOffset+fontSize+4,clrOrange,squareSize);
if(tmpValue_1>tmpValue_3)
{
SetObjText(chartId,preamble+"arrow_W1_"+Symbol(),CharToStr(233),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier,clrLime,fontSize);
}
else if(tmpValue_1<tmpValue_3)
{
SetObjText(chartId,preamble+"arrow_W1_"+Symbol(),CharToStr(234),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier+yOffsetArrow,clrRed,fontSize);
}
else
{
SetObjText(chartId,preamble+"arrow_W1_"+Symbol(),CharToStr(243),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier,clrOrange,fontSize);
}
}
else
{
SetObjText(chartId,preamble+"square_W1_"+Symbol(),CharToStr(110),xOffset-xOutline,yOffset+fontSize+4,clrGray,squareSize);
if(tmpValue_1>tmpValue_3)
{
SetObjText(chartId,preamble+"arrow_W1_"+Symbol(),CharToStr(233),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier,clrLime,fontSize);
}
else if(tmpValue_1<tmpValue_3)
{
SetObjText(chartId,preamble+"arrow_W1_"+Symbol(),CharToStr(234),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier+yOffsetArrow,clrRed,fontSize);
}
}
xOffset=xOffset+squareSize+squareSpace;
}
if(showDay)
{
tmpValue_1 = iCustom(Symbol(),PERIOD_D1,"RSIOMA (2)", 0, 0);
tmpValue_2 = iCustom(Symbol(),PERIOD_D1,"RSIOMA (2)", 5, 0);
tmpValue_3 = iCustom(Symbol(),PERIOD_D1,"RSIOMA (2)", 0, 1);
SetText(chartId,preamble+"D1_label_"+Symbol(),"D",xOffset,yOffset,textColor,fontSize);
if((tmpValue_1>tmpValue_2 || !useSignalsRank) && tmpValue_1>80.0)
{
SetObjText(chartId,preamble+"square_D1_"+Symbol(),CharToStr(110),xOffset-xOutline,yOffset+fontSize+4,clrLime,squareSize);
if(tmpValue_1>tmpValue_3)
{
SetObjText(chartId,preamble+"arrow_D1_"+Symbol(),CharToStr(233),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier,clrLime,fontSize);
}
else if(tmpValue_1<tmpValue_3)
{
SetObjText(chartId,preamble+"arrow_D1_"+Symbol(),CharToStr(234),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier+yOffsetArrow,clrRed,fontSize);
}
else
{
SetObjText(chartId,preamble+"arrow_D1_"+Symbol(),CharToStr(243),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier,clrOrange,fontSize);
}
}
else if((tmpValue_1>tmpValue_2 || !useSignalsRank) && tmpValue_1>50.0)
{
SetObjText(chartId,preamble+"square_D1_"+Symbol(),CharToStr(110),xOffset-xOutline,yOffset+fontSize+4,clrGreen,squareSize);
if(tmpValue_1>tmpValue_3)
{
SetObjText(chartId,preamble+"arrow_D1_"+Symbol(),CharToStr(233),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier,clrLime,fontSize);
}
else if(tmpValue_1<tmpValue_3)
{
SetObjText(chartId,preamble+"arrow_D1_"+Symbol(),CharToStr(234),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier+yOffsetArrow,clrRed,fontSize);
}
else
{
SetObjText(chartId,preamble+"arrow_D1_"+Symbol(),CharToStr(243),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier,clrOrange,fontSize);
}
}
else if((tmpValue_1<tmpValue_2 || !useSignalsRank) && tmpValue_1<20.0)
{
SetObjText(chartId,preamble+"square_D1_"+Symbol(),CharToStr(110),xOffset-xOutline,yOffset+fontSize+4,clrRed,squareSize);
if(tmpValue_1>tmpValue_3)
{
SetObjText(chartId,preamble+"arrow_D1_"+Symbol(),CharToStr(233),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier,clrLime,fontSize);
}
else if(tmpValue_1<tmpValue_3)
{
SetObjText(chartId,preamble+"arrow_D1_"+Symbol(),CharToStr(234),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier+yOffsetArrow,clrRed,fontSize);
}
else
{
SetObjText(chartId,preamble+"arrow_D1_"+Symbol(),CharToStr(243),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier,clrOrange,fontSize);
}
}
else if((tmpValue_1<tmpValue_2 || !useSignalsRank) && tmpValue_1<50.0)
{
SetObjText(chartId,preamble+"square_D1_"+Symbol(),CharToStr(110),xOffset-xOutline,yOffset+fontSize+4,clrOrange,squareSize);
if(tmpValue_1>tmpValue_3)
{
SetObjText(chartId,preamble+"arrow_D1_"+Symbol(),CharToStr(233),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier,clrLime,fontSize);
}
else if(tmpValue_1<tmpValue_3)
{
SetObjText(chartId,preamble+"arrow_D1_"+Symbol(),CharToStr(234),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier+yOffsetArrow,clrRed,fontSize);
}
else
{
SetObjText(chartId,preamble+"arrow_D1_"+Symbol(),CharToStr(243),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier,clrOrange,fontSize);
}
}
else
{
SetObjText(chartId,preamble+"square_D1_"+Symbol(),CharToStr(110),xOffset-xOutline,yOffset+fontSize+4,clrGray,squareSize);
if(tmpValue_1>tmpValue_3)
{
SetObjText(chartId,preamble+"arrow_D1_"+Symbol(),CharToStr(233),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier,clrLime,fontSize);
}
else if(tmpValue_1<tmpValue_3)
{
SetObjText(chartId,preamble+"arrow_D1_"+Symbol(),CharToStr(234),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier+yOffsetArrow,clrRed,fontSize);
}
}
xOffset=xOffset+squareSize+squareSpace;
}
if(showH4)
{
tmpValue_1 = iCustom(Symbol(),PERIOD_H4,"RSIOMA (2)", 0, 0);
tmpValue_2 = iCustom(Symbol(),PERIOD_H4,"RSIOMA (2)", 5, 0);
tmpValue_3 = iCustom(Symbol(),PERIOD_H4,"RSIOMA (2)", 0, 1);
SetText(chartId,preamble+"H4_label_"+Symbol(),"H4",xOffset,yOffset,textColor,fontSize);
if((tmpValue_1>tmpValue_2 || !useSignalsRank) && tmpValue_1>80.0)
{
SetObjText(chartId,preamble+"square_H4_"+Symbol(),CharToStr(110),xOffset-xOutline,yOffset+fontSize+4,clrLime,squareSize);
if(tmpValue_1>tmpValue_3)
{
SetObjText(chartId,preamble+"arrow_H4_"+Symbol(),CharToStr(233),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier,clrLime,fontSize);
}
else if(tmpValue_1<tmpValue_3)
{
SetObjText(chartId,preamble+"arrow_H4_"+Symbol(),CharToStr(234),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier+yOffsetArrow,clrRed,fontSize);
}
else
{
SetObjText(chartId,preamble+"arrow_H4_"+Symbol(),CharToStr(243),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier,clrOrange,fontSize);
}
}
else if((tmpValue_1>tmpValue_2 || !useSignalsRank) && tmpValue_1>50.0)
{
SetObjText(chartId,preamble+"square_H4_"+Symbol(),CharToStr(110),xOffset-xOutline,yOffset+fontSize+4,clrGreen,squareSize);
if(tmpValue_1>tmpValue_3)
{
SetObjText(chartId,preamble+"arrow_H4_"+Symbol(),CharToStr(233),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier,clrLime,fontSize);
}
else if(tmpValue_1<tmpValue_3)
{
SetObjText(chartId,preamble+"arrow_H4_"+Symbol(),CharToStr(234),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier+yOffsetArrow,clrRed,fontSize);
}
else
{
SetObjText(chartId,preamble+"arrow_H4_"+Symbol(),CharToStr(243),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier,clrOrange,fontSize);
}
}
else if((tmpValue_1<tmpValue_2 || !useSignalsRank) && tmpValue_1<20.0)
{
SetObjText(chartId,preamble+"square_H4_"+Symbol(),CharToStr(110),xOffset-xOutline,yOffset+fontSize+4,clrRed,squareSize);
if(tmpValue_1>tmpValue_3)
{
SetObjText(chartId,preamble+"arrow_H4_"+Symbol(),CharToStr(233),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier,clrLime,fontSize);
}
else if(tmpValue_1<tmpValue_3)
{
SetObjText(chartId,preamble+"arrow_H4_"+Symbol(),CharToStr(234),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier+yOffsetArrow,clrRed,fontSize);
}
else
{
SetObjText(chartId,preamble+"arrow_H4_"+Symbol(),CharToStr(243),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier,clrOrange,fontSize);
}
}
else if((tmpValue_1<tmpValue_2 || !useSignalsRank) && tmpValue_1<50.0)
{
SetObjText(chartId,preamble+"square_H4_"+Symbol(),CharToStr(110),xOffset-xOutline,yOffset+fontSize+4,clrOrange,squareSize);
if(tmpValue_1>tmpValue_3)
{
SetObjText(chartId,preamble+"arrow_H4_"+Symbol(),CharToStr(233),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier,clrLime,fontSize);
}
else if(tmpValue_1<tmpValue_3)
{
SetObjText(chartId,preamble+"arrow_H4_"+Symbol(),CharToStr(234),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier+yOffsetArrow,clrRed,fontSize);
}
else
{
SetObjText(chartId,preamble+"arrow_H4_"+Symbol(),CharToStr(243),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier,clrOrange,fontSize);
}
}
else
{
SetObjText(chartId,preamble+"square_H4_"+Symbol(),CharToStr(110),xOffset-xOutline,yOffset+fontSize+4,clrGray,squareSize);
if(tmpValue_1>tmpValue_3)
{
SetObjText(chartId,preamble+"arrow_H4_"+Symbol(),CharToStr(233),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier,clrLime,fontSize);
}
else if(tmpValue_1<tmpValue_3)
{
SetObjText(chartId,preamble+"arrow_H4_"+Symbol(),CharToStr(234),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier+yOffsetArrow,clrRed,fontSize);
}
}
xOffset=xOffset+squareSize+squareSpace;
}
if(showH1)
{
tmpValue_1 = iCustom(Symbol(),PERIOD_H1,"RSIOMA (2)", 0, 0);
tmpValue_2 = iCustom(Symbol(),PERIOD_H1,"RSIOMA (2)", 5, 0);
tmpValue_3 = iCustom(Symbol(),PERIOD_H1,"RSIOMA (2)", 0, 1);
SetText(chartId,preamble+"H1_label_"+Symbol(),"H1",xOffset,yOffset,textColor,fontSize);
if((tmpValue_1>tmpValue_2 || !useSignalsRank) && tmpValue_1>80.0)
{
SetObjText(chartId,preamble+"square_H1_"+Symbol(),CharToStr(110),xOffset-xOutline,yOffset+fontSize+4,clrLime,squareSize);
if(tmpValue_1>tmpValue_3)
{
SetObjText(chartId,preamble+"arrow_H1_"+Symbol(),CharToStr(233),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier,clrLime,fontSize);
}
else if(tmpValue_1<tmpValue_3)
{
SetObjText(chartId,preamble+"arrow_H1_"+Symbol(),CharToStr(234),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier+yOffsetArrow,clrRed,fontSize);
}
else
{
SetObjText(chartId,preamble+"arrow_H1_"+Symbol(),CharToStr(243),xOffset+arrowOutlineX,yOffset+fontSize+squareSize*multiplier,clrOrange,fontSize);
}
}
else if((tmpValue_1>tmpValue_2 || !useSignalsRank) && tmpValue_1>50.0)
{
SetObjText(chartId,preamble+"square_H1_"+Symbol(),CharToStr(110),xOffset-xOutline,yOffset+Показано первые 50% кода (символов: 33507)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.