FX Multi-Meter v.1
Похожие материалы по тегам
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «forex goats sa bar meter.mq5» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
FX Multi-Meter v.1 — это пользовательский индикатор для MetaTrader 4, который отображает многоцелевую панель данных прямо на графике цены. Он рассчитывает и визуализирует значения технических инструментов по нескольким таймфреймам одновременно, включая стохастик, скользящие средние, MACD, параболический SAR, индикатор Уильямса %R, спред и бар-метр интенсивности ценовых изменений.
Вся информация выводится в виде текстовых объектов внутри окна графика, организованная в логические секции с заголовками. Каждый блок отображает текущие значения и состояние с цветовой индикацией через изменение цвета текстовых меток.
Секция бар-метра отслеживает изменения цен на последних пяти баров и классифицирует текущее движение как «Speeding Up», «Steady», «Slowing Down» или «Stopped». Секция сигнала объединяет состояния нескольких индикаторов и отображает направительный сигнал (вверх, вниз или ожидание).
Индикатор работает на всех стандартных таймфреймах MQL4 от M1 до D1 и обновляется при каждом новом тике, используя обработчик событий start().
Настройки программы
| Настройка | Описание |
|---|---|
| StochsValues | Разделитель стохастика — Строковый разделитель секции стохастика в настройках. |
| Stoch_K | Период Stoch K — Период основной линии стохастика. |
| Stoch_D | Период Stoch D — Период сигнальной линии стохастика. |
| Stoch_Slowing | Период замедления Stoch — Период замедления стохастика. |
| MAvalues | Разделитель скользящих средних — Строковый разделитель секции скользящих средних в настройках. |
| MA_Period | Период скользящей средней — Период экспоненциальной скользящей средней для всех таймфреймов. |
| MA_Shift | Сдвиг скользящей средней — Сдвиг скользящей средней. |
| MACDvalues | Разделитель MACD — Строковый разделитель секции MACD в настройках. |
| MACD_Period1 | Быстрый период MACD — Быстрый период MACD. |
| MACD_Period2 | Медленный период MACD — Медленный период MACD. |
| MACD_Period3 | Период сигнальной линии MACD — Период сигнальной линии MACD. |
| MAXvalues | Разделитель MA Xover — Строковый разделитель секции MA Xover в настройках. |
| FastLWMA | Период Fast LWMA — Период быстрой линейно-взвешенной скользящей средней для индикатора MA Xover. |
| SlowSMA | Период Slow SMA — Период простой скользящей средней для индикатора MA Xover. |
| PSARvalues | Разделитель SAR — Строковый разделитель секции параболического SAR в настройках. |
| PSAR_Step | Шаг SAR — Начальное значение ускорения параболического SAR. |
| PSAR_Max | Максимум SAR — Максимальное значение ускорения параболического SAR. |
Поиск по коду файла
#property indicator_chart_window
extern string StochsValues = "== Stochastic Oscillators ==";
extern int Stoch_K = 14;
extern int Stoch_D = 3;
extern int Stoch_Slowing = 3;
extern string MAvalues = "== Moving Averages ==";
extern int MA_Period = 14;
extern int MA_Shift = 0;
extern string MACDvalues = "== MACD ==";
extern int MACD_Period1 = 12;
extern int MACD_Period2 = 26;
extern int MACD_Period3 = 9;
extern string MAXvalues = "== MA Xover ==";
extern int FastLWMA = 3;
extern int SlowSMA = 5;
extern string PSARvalues = "== Parabolic SAR ==";
extern double PSAR_Step = 0.02;
extern double PSAR_Max = 0.2;
int init()
{
// код доступен только после оплаты
}
int deinit()
{
ObjectsDeleteAll(0,OBJ_LABEL);
Print("shutdown error - ",GetLastError());
return(0);
}
int start()
{
// код доступен только после оплаты
}
void main()
{
RefreshRates();
double M1stochK,M1stochD,M5stochK,M5stochD,M15stochK,M15stochD,M30stochK,M30stochD,H1stochK,H1stochD,H4stochK,H4stochD,D1stochK,D1stochD,StochK,StochD,StochKprev,StochDprev;
double MAM1,MAM5,MAM15,MAM30,MAH1,MAH4,MAD1,MAM1prev,MAM5prev,MAM15prev,MAM30prev,MAH1prev,MAH4prev,MAD1prev,MACurrent,MAPrevious;
double Spread,PSARCurrent,PSARPrev,MACDCurrent,MACDPrev,MACDSignal,MACDSignalPrev,MAXover1,MAXover2,VolumePercent,Vol,VolPrev,WPR,Bar1,Bar2,Bar3,Bar4,Bar5,Bar6,Bar7,Bar8,Bar9,Bar10;
double Bar1percent,Bar2percent,Bar3percent,Bar4percent,Bar5percent,BarsAverage1,BarsAverage2,BarsAverage3,BarsAverage4,BarsAverage5,BarsAllpercent;
int trendM1,trendM5,trendM15,trendM30,trendH1,trendH4,trendD1,PSAR,MACD,MAXoverSignal,VolValue,WPRValueUp,WPRValueDown,Bar1Col,Bar2Col,Bar3Col,Bar4Col,Bar5Col,BarReading,Signal;
M1stochK = iStochastic(Symbol(), PERIOD_M1, Stoch_K,Stoch_D, Stoch_Slowing, MODE_SMA, 0, MODE_MAIN, 0);
M1stochD = iStochastic(Symbol(), PERIOD_M1, Stoch_K,Stoch_D, Stoch_Slowing, MODE_SMA, 0, MODE_SIGNAL, 0);
M5stochK = iStochastic(Symbol(), PERIOD_M5, Stoch_K,Stoch_D, Stoch_Slowing, MODE_SMA, 0, MODE_MAIN, 0);
M5stochD = iStochastic(Symbol(), PERIOD_M5, Stoch_K,Stoch_D, Stoch_Slowing, MODE_SMA, 0, MODE_SIGNAL, 0);
M15stochK = iStochastic(Symbol(), PERIOD_M15, Stoch_K,Stoch_D, Stoch_Slowing, MODE_SMA, 0, MODE_MAIN, 0);
M15stochD = iStochastic(Symbol(), PERIOD_M15, Stoch_K,Stoch_D, Stoch_Slowing, MODE_SMA, 0, MODE_SIGNAL, 0);
M30stochK = iStochastic(Symbol(), PERIOD_M30, Stoch_K,Stoch_D, Stoch_Slowing, MODE_SMA, 0, MODE_MAIN, 0);
M30stochD = iStochastic(Symbol(), PERIOD_M30, Stoch_K,Stoch_D, Stoch_Slowing, MODE_SMA, 0, MODE_SIGNAL, 0);
H1stochK = iStochastic(Symbol(), PERIOD_H1, Stoch_K,Stoch_D, Stoch_Slowing, MODE_SMA, 0, MODE_MAIN, 0);
H1stochD = iStochastic(Symbol(), PERIOD_H1, Stoch_K,Stoch_D, Stoch_Slowing, MODE_SMA, 0, MODE_SIGNAL, 0);
H4stochK = iStochastic(Symbol(), PERIOD_H4, Stoch_K,Stoch_D, Stoch_Slowing, MODE_SMA, 0, MODE_MAIN, 0);
H4stochD = iStochastic(Symbol(), PERIOD_H4, Stoch_K,Stoch_D, Stoch_Slowing, MODE_SMA, 0, MODE_SIGNAL, 0);
D1stochK = iStochastic(Symbol(), PERIOD_D1, Stoch_K,Stoch_D, Stoch_Slowing, MODE_SMA, 0, MODE_MAIN, 0);
D1stochD = iStochastic(Symbol(), PERIOD_D1, Stoch_K,Stoch_D, Stoch_Slowing, MODE_SMA, 0, MODE_SIGNAL, 0);
StochK = iStochastic(Symbol(), 0, Stoch_K,Stoch_D, Stoch_Slowing, MODE_SMA, 0, MODE_MAIN, 0);
StochD = iStochastic(Symbol(), 0, Stoch_K,Stoch_D, Stoch_Slowing, MODE_SMA, 0, MODE_SIGNAL, 0);
StochKprev = iStochastic(Symbol(), 0, Stoch_K,Stoch_D, Stoch_Slowing, MODE_SMA, 0, MODE_MAIN, 1);
StochDprev = iStochastic(Symbol(), 0, Stoch_K,Stoch_D, Stoch_Slowing, MODE_SMA, 0, MODE_SIGNAL, 1);
MAM1=iMA(NULL,PERIOD_M1,MA_Period,MA_Shift,MODE_EMA,PRICE_CLOSE,0);
MAM5=iMA(NULL,PERIOD_M5,MA_Period,MA_Shift,MODE_EMA,PRICE_CLOSE,0);
MAM15=iMA(NULL,PERIOD_M15,MA_Period,MA_Shift,MODE_EMA,PRICE_CLOSE,0);
MAM30=iMA(NULL,PERIOD_M30,MA_Period,MA_Shift,MODE_EMA,PRICE_CLOSE,0);
MAH1=iMA(NULL,PERIOD_H1,MA_Period,MA_Shift,MODE_EMA,PRICE_CLOSE,0);
MAH4=iMA(NULL,PERIOD_H4,MA_Period,MA_Shift,MODE_EMA,PRICE_CLOSE,0);
MAD1=iMA(NULL,PERIOD_D1,MA_Period,MA_Shift,MODE_EMA,PRICE_CLOSE,0);
MAM1prev=iMA(NULL,PERIOD_M1,MA_Period,MA_Shift,MODE_EMA,PRICE_CLOSE,1);
MAM5prev=iMA(NULL,PERIOD_M5,MA_Period,MA_Shift,MODE_EMA,PRICE_CLOSE,1);
MAM15prev=iMA(NULL,PERIOD_M15,MA_Period,MA_Shift,MODE_EMA,PRICE_CLOSE,1);
MAM30prev=iMA(NULL,PERIOD_M30,MA_Period,MA_Shift,MODE_EMA,PRICE_CLOSE,1);
MAH1prev=iMA(NULL,PERIOD_H1,MA_Period,MA_Shift,MODE_EMA,PRICE_CLOSE,1);
MAH4prev=iMA(NULL,PERIOD_H4,MA_Period,MA_Shift,MODE_EMA,PRICE_CLOSE,1);
MAD1prev=iMA(NULL,PERIOD_D1,MA_Period,MA_Shift,MODE_EMA,PRICE_CLOSE,1);
MACurrent=iMA(NULL,0,MA_Period,MA_Shift,MODE_EMA,PRICE_CLOSE,0);
MAPrevious=iMA(NULL,0,MA_Period,MA_Shift,MODE_EMA,PRICE_CLOSE,1);
if(MAM1 > MAM1prev)
{
trendM1=1;
}
if(MAM1 < MAM1prev)
{
trendM1=0;
}
if(MAM5 > MAM5prev)
{
trendM5=1;
}
if(MAM5 < MAM5prev)
{
trendM5=0;
}
if(MAM15 > MAM15prev)
{
trendM15=1;
}
if(MAM15 < MAM15prev)
{
trendM15=0;
}
if(MAM30 > MAM30prev)
{
trendM30=1;
}
if(MAM30 < MAM30prev)
{
trendM30=0;
}
if(MAH1 > MAH1prev)
{
trendH1=1;
}
if(MAH1 < MAH1prev)
{
trendH1=0;
}
if(MAH4 > MAH4prev)
{
trendH4=1;
}
if(MAH4 < MAH4prev)
{
trendH4=0;
}
if(MAD1 > MAD1prev)
{
trendD1=1;
}
if(MAD1 < MAD1prev)
{
trendD1=0;
}
Spread=NormalizeDouble(((Ask-Bid)/Point)/10,1);
PSARCurrent= iSAR(NULL,0,PSAR_Step,PSAR_Max,0);
PSARPrev= iSAR(NULL,0,PSAR_Step,PSAR_Max,1);
if (PSARCurrent>PSARPrev)
{
PSAR=1;
}
if (PSARCurrent<PSARPrev)
{
PSAR=0;
}
MACDCurrent = iMACD(NULL,0,MACD_Period1,MACD_Period2,MACD_Period3,PRICE_CLOSE,MODE_MAIN,0);
MACDPrev = iMACD(NULL,0,MACD_Period1,MACD_Period2,MACD_Period3,PRICE_CLOSE,MODE_MAIN,1);
MACDSignal = iMACD(NULL,0,MACD_Period1,MACD_Period2,MACD_Period3,PRICE_CLOSE,MODE_SIGNAL,0);
MACDSignalPrev = iMACD(NULL,0,MACD_Period1,MACD_Period2,MACD_Period3,PRICE_CLOSE,MODE_SIGNAL,1);
if (MACDCurrent>MACDPrev && ((MACDCurrent && MACDPrev)>MACDSignal || (MACDCurrent && MACDPrev)<MACDSignal))
{
MACD=3;
}
if (MACDCurrent<MACDSignal && MACDPrev>MACDSignalPrev)
{
MACD=2;
}
if (MACDCurrent<MACDPrev && ((MACDCurrent && MACDPrev)>MACDSignal || (MACDCurrent && MACDPrev)<MACDSignal))
{
MACD=1;
}
if (MACDCurrent>MACDSignal && MACDPrev<MACDSignalPrev)
{
MACD=0;
}
if (MACDCurrent>0 && MACDPrev<0)
{
MACD=4;
}
if (MACDCurrent<0 && MACDPrev>0)
{
MACD=5;
}
MAXover1=iMA(NULL,0,FastLWMA,0,MODE_LWMA,PRICE_CLOSE,0);
MAXover2=iMA(NULL,0,SlowSMA,0,MODE_SMA,PRICE_CLOSE,0);
if (MAXover1>MAXover2)
{
MAXoverSignal=1;
}
if (MAXover1<MAXover2)
{
MAXoverSignal=0;
}
WPR=iWPR(NULL,0,14,0);
if (WPR<=0 && WPR>=-5)
{
WPRValueUp=1;
}
if (WPR>=-20 && WPR<-5)
{
WPRValueUp=2;
}
if (WPR>=-30 && WPR<-20)
{
WPRValueUp=3;
}
if (WPR>=-40 && WPR<-30)
{
WPRValueUp=4;
}
if (WPR>-50 && WPR<-40)
{
WPRValueUp=5;
}
if (WPR<-50 && WPR>=-60)
{
WPRValueDown=6;
}
if (WPR<=-60 && WPR>=-70)
{
WPRValueDown=7;
}
if (WPR<=-70 && WPR>=-80)
{
WPRValueDown=8;
}
if (WPR<=-80 && WPR>=-95)
{
WPRValueDown=9;
}
if (WPR<=-95 && WPR>=-100)
{
WPRValueDown=10;
}
if (Close[0] > Close[1])
{
Bar1 = (Close[0] - Close[1])*100000;
}
if (Close[0] < Close[1])
{
Bar1 = (Close[1] - Close[0])*100000;
}
if (Close[1] > Close[2])
{
Bar2 = (Close[1] - Close[2])*100000;
}
if (Close[1] < Close[2])
{
Bar2 = (Close[2] - Close[1])*100000;
}
if (Close[2] > Close[3])
{
Bar3 = (Close[2] - Close[3])*100000;
}
if (Close[2] < Close[3])
{
Bar3 = (Close[3] - Close[2])*100000;
}
if (Close[3] > Close[4])
{
Bar4 = (Close[3] - Close[4])*100000;
}
if (Close[3] < Close[4])
{
Bar4 = (Close[4] - Close[3])*100000;
}
if (Close[4] > Close[5])
{
Bar5 = (Close[4] - Close[5])*100000;
}
if (Close[4] < Close[5])
{
Bar5 = (Close[5] - Close[4])*100000;
}
if (Close[5] > Close[6])
{
Bar6 = (Close[5] - Close[6])*100000;
}
if (Close[5] < Close[6])
{
Bar6 = (Close[6] - Close[5])*100000;
}
if (Close[6] > Close[7])
{
Bar7 = (Close[6] - Close[7])*100000;
}
if (Close[6] < Close[7])
{
Bar7 = (Close[7] - Close[6])*100000;
}
if (Close[7] > Close[8])
{
Bar8 = (Close[7] - Close[8])*100000;
}
if (Close[7] < Close[8])
{
Bar8 = (Close[8] - Close[7])*100000;
}
if (Close[8] > Close[9])
{
Bar9 = (Close[8] - Close[9])*100000;
}
if (Close[8] < Close[9])
{
Bar9 = (Close[9] - Close[8])*100000;
}
if (Close[9] > Close[10])
{
Bar10 = (Close[9] - Close[10])*100000;
}
if (Close[9] < Close[10])
{
Bar10 = (Close[10] - Close[9])*100000;
}
BarsAverage1 = (Bar2 + Bar3 + Bar4 + Bar5)/4;
BarsAverage2 = (Bar3 + Bar4 + Bar5 + Bar6)/4;
BarsAverage3 = (Bar4 + Bar5 + Bar6 + Bar7)/4;
BarsAverage4 = (Bar5 + Bar6 + Bar7 + Bar8)/4;
BarsAverage5 = (Bar6 + Bar7 + Bar8 + Bar9)/4;
Bar1percent = NormalizeDouble((Bar1/BarsAverage1)*100,0);
Bar2percent = NormalizeDouble((Bar2/BarsAverage2)*100,0);
Bar3percent = NormalizeDouble((Bar3/BarsAverage3)*100,0);
Bar4percent = NormalizeDouble((Bar4/BarsAverage4)*100,0);
Bar5percent = NormalizeDouble((Bar5/BarsAverage5)*100,0);
BarsAllpercent = NormalizeDouble(((Bar2 + Bar3 + Bar4 + Bar5)/4)*100,0);
if (Bar1percent==0) //Stopped
{
BarReading = 1;
}
if (Bar1percent>Bar2percent && Bar1percent>100 && Bar1percent!=0) //Speeding Up
{
BarReading = 2;
}
if (Bar1percent<=100 && Bar1percent!=0) //Steady
{
BarReading = 3;
}
if (Bar1percent<Bar2percent && Bar2percent>100 && Bar1percent>100 && Bar1percent!=0) //Slowing Down
{
BarReading = 4;
}
if (Bar1percent==0 || Close[0] == Close[1])
{
Bar1Col = 12;
}
if (Bar1percent<25 && Bar1percent>0)
{
Bar1Col = 11;
}
if (Bar1percent>=400)
{
if (Close[0] > Close[1])
{
Bar1Col = 1;
}
else if (Close[0] < Close[1]) Bar1Col = 10;
}
if (Bar1percent>=200 && Bar1percent<400)
{
if (Close[0] > Close[1])
{
Bar1Col = 2;
}
else if (Close[0] < Close[1]) Bar1Col = 9;
}
if (Bar1percent>=100 && Bar1percent<200)
{
if (Close[0] > Close[1])
{
Bar1Col = 3;
}
else if (Close[0] < Close[1]) Bar1Col = 8;
}
if (Bar1percent>=50 && Bar1percent<100)
{
if (Close[0] > Close[1])
{
Bar1Col = 4;
}
else if (Close[0] < Close[1]) Bar1Col = 7;
}
if (Bar1percent>=25 && Bar1percent<50)
{
if (Close[0] > Close[1])
{
Bar1Col = 5;
}
else if (Close[0] < Close[1]) Bar1Col = 6;
}
if (Bar2percent==0 || Close[1] == Close[2])
{
Bar2Col = 12;
}
if (Bar2percent<25 && Bar2percent>0)
{
Bar2Col = 11;
}
if (Bar2percent>=400)
{
if (Close[1] > Close[2])
{
Bar2Col = 1;
}
else if (Close[1] < Close[2]) Bar2Col = 10;
}
if (Bar2percent>=200 && Bar2percent<400)
{
if (Close[1] > Close[2])
{
Bar2Col = 2;
}
else if (Close[1] < Close[2]) Bar2Col = 9;
}
if (Bar2percent>=100 && Bar2percent<200)
{
if (Close[1] > Close[2])
{
Bar2Col = 3;
}
else if (Close[1] < Close[2]) Bar2Col = 8;
}
if (Bar2percent>=50 && Bar2percent<100)
{
if (Close[1] > Close[2])
{
Bar2Col = 4;
}
else if (Close[1] < Close[2]) Bar2Col = 7;
}
if (Bar2percent>=25 && Bar2percent<50)
{
if (Close[1] > Close[2])
{
Bar2Col = 5;
}
else if (Close[1] < Close[2]) Bar2Col = 6;
}
if (Bar3percent==0 || Close[2] == Close[3])
{
Bar3Col = 12;
}
if (Bar3percent<25 && Bar3percent>0)
{
Bar3Col = 11;
}
if (Bar3percent>=400)
{
if (Close[2] > Close[3])
{
Bar3Col = 1;
}
else if (Close[2] < Close[3]) Bar3Col = 10;
}
if (Bar3percent>=200 && Bar3percent<400)
{
if (Close[2] > Close[3])
{
Bar3Col = 2;
}
else if (Close[2] < Close[3]) Bar3Col = 9;
}
if (Bar3percent>=100 && Bar3percent<200)
{
if (Close[2] > Close[3])
{
Bar3Col = 3;
}
else if (Close[2] < Close[3]) Bar3Col = 8;
}
if (Bar3percent>=50 && Bar3percent<100)
{
if (Close[2] > Close[3])
{
Bar3Col = 4;
}
else if (Close[2] < Close[3]) Bar3Col = 7;
}
if (Bar3percent>=25 && Bar3percent<50)
{
if (Close[2] > Close[3])
{
Bar3Col = 5;
}
else if (Close[2] < Close[3]) Bar3Col = 6;
}
if (Bar4percent==0 || Close[3] == Close[4])
{
Bar4Col = 12;
}
if (Bar4percent<25 && Bar4percent>0)
{
Bar4Col = 11;
}
if (Bar4percent>=400)
{
if (Close[3] > Close[4])
{
Bar4Col = 1;
}
else if (Close[3] < Close[4]) Bar4Col = 10;
}
if (Bar4percent>=200 && Bar4percent<400)
{
if (Close[3] > Close[4])
{
Bar4Col = 2;
}
else if (Close[3] < Close[4]) Bar4Col = 9;
}
if (Bar4percent>=100 && Bar4percent<200)
{
if (Close[3] > Close[4])
{
Bar4Col = 3;
}
else if (Close[3] < Close[4]) Bar4Col = 8;
}
if (Bar4percent>=50 && Bar4percent<100)
{
if (Close[3] > Close[4])
{
Bar4Col = 4;
}
else if (Close[3] < Close[4]) Bar4Col = 7;
}
if (Bar4percent>=25 && Bar4percent<50)
{
if (Close[3] > Close[4])
{
Bar4Col = 5;
}
else if (Close[3] < Close[4]) Bar4Col = 6;
}
if (Bar5percent==0 || Close[4] == Close[5])
{
Bar5Col = 12;
}
if (Bar5percent<25 && Bar5percent>0)
{
Bar5Col = 11;
}
if (Bar5percent>=400)
{
if (Close[4] > Close[5])
{
Bar5Col = 1;
}
else if (Close[4] < Close[5]) Bar5Col = 10;
}
if (Bar5percent>=200 && Bar5percent<400)
{
if (Close[4] > Close[5])
{
Bar5Col = 2;
}
else if (Close[4] < Close[5]) Bar5Col = 9;
}
if (Bar5percent>=100 && Bar5percent<200)
{
if (Close[4] > Close[5])
{
Bar5Col = 3;
}
else if (Close[4] < Close[5]) Bar5Col = 8;
}
if (Bar5percent>=50 && Bar5percent<100)
{
if (Close[4] > Close[5])
{
Bar5Col = 4;
}
else if (Close[4] < Close[5]) Bar5Col = 7;
}
if (Bar5percent>=25 && Bar5percent<50)
{
if (Close[4] > Close[5])
{
Bar5Col = 5;
}
else if (Close[4] < Close[5]) Bar5Col = 6;
}
if ((MACD==1 || MACD==2) && MAXoverSignal==0 && WPR<-50 && MACurrent<MAPrevious && StochK<StochKprev && Close[0]<Close[1])
{
Signal = 1;
}
if ((MACD==3 || MACD==0) && MAXoverSignal==1 && WPR>-50 && MACurrent>MAPrevious && StochK>StochKprev && Close[0]>Close[1])
{
Signal = 2;
}
objectBlank();
paintM1(M1stochK);
paintM5(M5stochK);
paintM15(M15stochK);
paintM30(M30stochK);
paintH1(H1stochK);
paintH4(H4stochK);
paintD1(D1stochK);
paintLine();
paintMA_M1(trendM1);
paintMA_M5(trendM5);
paintMA_M15(trendM15);
paintMA_M30(trendM30);
paintMA_H1(trendH1);
paintMA_H4(trendH4);
paintMA_D1(trendD1);
paint2Line();
paintWPRUp(WPRValueUp);
paintWPRDown(WPRValueDown);
paintWPRValue(WPR);
paintSpread(Spread);
paintSpreadLines();
paintPSAR(PSAR);
paintMACD(MACD);
paintMAXover(MAXoverSignal);
paintBars();
paintBarValue1(Bar1percent);
paintBarValue2(Bar2percent);
paintBarValue3(Bar3percent);
paintBarValue4(Bar4percent);
paintBarValue5(Bar5percent);
paintBar1(Bar1Col);
paintBar2(Bar2Col);
paintBar3(Bar3Col);
paintBar4(Bar4Col);
paintBar5(Bar5Col);
paintBarReading(BarReading);
paintSignal(Signal);
}
void initGraph()
{
ObjectsDeleteAll(0,OBJ_LABEL);
objectCreate("M_1_90",130,91);
objectCreate("M_1_80",130,83);
objectCreate("M_1_70",130,75);
objectCreate("M_1_60",130,67);
objectCreate("M_1_50",130,59);
objectCreate("M_1_40",130,51);
objectCreate("M_1_30",130,43);
objectCreate("M_1_20",130,35);
objectCreate("M_1_10",130,27);
objectCreate("M_1_0",130,19);
objectCreate("M_1",135,20,"M1",7,"Arial Narrow",SkyBlue);
objectCreate("M_1p",134,29,DoubleToStr(9,1),8,"Arial Narrow",Silver);
objectCreate("M_5_90",110,91);
objectCreate("M_5_80",110,83);
objectCreate("M_5_70",110,75);
objectCreate("M_5_60",110,67);
objectCreate("M_5_50",110,59);
objectCreate("M_5_40",110,51);
objectCreate("M_5_30",110,43);
objectCreate("M_5_20",110,35);
objectCreate("M_5_10",110,27);
objectCreate("M_5_0",110,19);
objectCreate("M_5",115,20,"M5",7,"Arial Narrow",SkyBlue);
objectCreate("M_5p",114,29,DoubleToStr(9,1),8,"Arial Narrow",Silver);
objectCreate("M_15_90",90,91);
objectCreate("M_15_80",90,83);
objectCreate("M_15_70",90,75);
objectCreate("M_15_60",90,67);
objectCreate("M_15_50",90,59);
objectCreate("M_15_40",90,51);
objectCreate("M_15_30",90,43);
objectCreate("M_15_20",90,35);
objectCreate("M_15_10",90,27);
objectCreate("M_15_0",90,19);
objectCreate("M_15",93,20,"M15",7,"Arial Narrow",SkyBlue);
objectCreate("M_15p",94,29,DoubleToStr(9,1),8,"Arial Narrow",Silver);
objectCreate("M_30_90",70,91);
objectCreate("M_30_80",70,83);
objectCreate("M_30_70",70,75);
objectCreate("M_30_60",70,67);
objectCreate("M_30_50",70,59);
objectCreate("M_30_40",70,51);
objectCreate("M_30_30",70,43);
objectCreate("M_30_20",70,35);
objectCreate("M_30_10",70,27);
objectCreate("M_30_0",70,19);
objectCreate("M_30",73,20,"M30",7,"Arial Narrow",SkyBlue);
objectCreate("M_30p",74,29,DoubleToStr(9,1),8,"Arial Narrow",Silver);
objectCreate("H_1_90",50,91);
objectCreate("H_1_80",50,83);
objectCreate("H_1_70",50,75);
objectCreate("H_1_60",50,67);
objectCreate("H_1_50",50,59);
objectCreate("H_1_40",50,51);
objectCreate("H_1_30",50,43);
objectCreate("H_1_20",50,35);
objectCreate("H_1_10",50,27);
objectCreate("H_1_0",50,19);
objectCreate("H_1",54,20,"H1",7,"Arial Narrow",SkyBlue);
objectCreate("H_1p",54,29,DoubleToStr(9,1),8,"Arial Narrow",Silver);
objectCreate("H_4_90",30,91);
objectCreate("H_4_80",30,83);
objectCreate("H_4_70",30,75);
objectCreate("H_4_60",30,67);
objectCreate("H_4_50",30,59);
objectCreate("H_4_40",30,51);
objectCreate("H_4_30",30,43);
objectCreate("H_4_20",30,35);
objectCreate("H_4_10",30,27);
objectCreate("H_4_0",30,19);
objectCreate("H_4",34,20,"H4",7,"Arial Narrow",SkyBlue);
objectCreate("H_4p",34,29,DoubleToStr(9,1),8,"Arial Narrow",Silver);
objectCreate("D_1_90",10,91);
objectCreate("D_1_80",10,83);
objectCreate("D_1_70",10,75);
objectCreate("D_1_60",10,67);
objectCreate("D_1_50",10,59);
objectCreate("D_1_40",10,51);
objectCreate("D_1_30",10,43);
objectCreate("D_1_20",10,35);
objectCreate("D_1_10",10,27);
objectCreate("D_1_0",10,19);
objectCreate("D_1",15,20,"D1",7,"Arial Narrow",SkyBlue);
objectCreate("D_1p",14,29,DoubleToStr(9,1),8,"Arial Narrow",Silver);
objectCreate("line",10,14,"-----------------------------------",10,"Arial",DimGray);
objectCreate("line1",10,35,"-----------------------------------",10,"Arial",DimGray);
objectCreate("line2",10,118,"-----------------------------------",10,"Arial",DimGray);
objectCreate("sign",11,6,"STOCHASTIC OSCILLATORS",9,"Arial Narrow",DimGray);
objectCreate("2M_1_MA",130,137);
objectCreate("2M_5_MA",110,137);
objectCreate("2M_15_MA",90,137);
objectCreate("2M_30_MA",70,137);
objectCreate("2H_1_MA",50,137);
objectCreate("2H_4_MA",30,137);
objectCreate("2D_1_MA",10,137);
objectCreate("2M_1",135,147,"M1",7,"Arial Narrow",SkyBlue);
objectCreate("2M_5",115,147,"M5",7,"Arial Narrow",SkyBlue);
objectCreate("2M_15",93,147,"M15",7,"Arial Narrow",SkyBlue);
objectCreate("2M_30",73,147,"M30",7,"Arial Narrow",SkyBlue);
objectCreate("2H_1",54,147,"H1",7,"Arial Narrow",SkyBlue);
objectCreate("2H_4",34,147,"H4",7,"Arial Narrow",SkyBlue);
objectCreate("2D_1",15,147,"D1",7,"Arial Narrow",SkyBlue);
objectCreate("2line",10,141,"-----------------------------------",10,"Arial",DimGray);
objectCreate("2line1",10,152,"-----------------------------------",10,"Arial",DimGray);
objectCreate("2line2",10,164,"-----------------------------------",10,"Arial",DimGray);
objectCreate("2sign",12,132,"MOVING AVERAGE TREND",9,"Arial Narrow",DimGray);
objectCreate("MACD_Value1",118,271,"p",20,"Wingdings 3",Lime);
objectCreate("MACD_Value2",122,271,"X",20,"Arial",Red);
objectCreate("MACD_Value3",118,271,"q",20,"Wingdings 3",Red);
objectCreate("MACD_Value4",122,271,"X",20,"Arial",Lime);
objectCreate("MACD_Value5",122,271,"0",20,"Arial",Lime);
objectCreate("MACD_Value6",122,271,"0",20,"Arial",Red);
objectCreate("MACD_Chart",112,259,"CURRENT",7,"Arial Narrow",SkyBlue);
objectCreate("MACD_Line1",113,252,"---------",10,"Arial",DimGray);
objectCreate("MACD_Line2",113,265,"---------",10,"Arial",DimGray);
objectCreate("MACD_Title",115,243,"MACD",9,"Arial Narrow",DimGray);
objectCreate("PSAR_Value1",118,206,"p",20,"Wingdings 3",Lime);
objectCreate("PSAR_Value2",118,206,"q",20,"Wingdings 3",Red);
objectCreate("PSAR_Chart",112,194,"CURRENT",7,"Arial Narrow",SkyBlue);
objectCreate("PSAR_Line1",113,187,"---------",10,"Arial",DimGray);
objectCreate("PSAR_Line2",113,200,"---------",10,"Arial",DimGray);
objectCreate("PSAR_Line3",113,229,"---------",10,"Arial",DimGray);
objectCreate("PSAR_Title",115,178,"P-SAR",9,"Arial Narrow",DimGray);
objectCreate("WPRpercent",12,300,"%",8,"Arial",Silver);
objectCreate("WPRValue",22,300,DoubleToStr(9,1),9,"Arial",Silver);
object2Create("V+5",12,288);
object2Create("V+4",12,280);
object2Create("V+3",12,272);
object2Create("V+2",12,264);
object2Create("V+1",12,256);
object2Create("V=0",12,248);
object2Create("V-1",12,240);
object2Create("V-2",12,232);
object2Create("V-3",12,224);
object2Create("V-4",12,216);
object2Create("V-5",12,208);
objectCreate("VolumeChart",10,194,"CURRENT",7,"Arial Narrow",SkyBlue);
objectCreate("WPRLine1",10,187,"---------",10,"Arial",DimGray);
objectCreate("WPRLine2",10,200,"---------",10,"Arial",DimGray);
objectCreate("WPRLine3",10,292,"---------",10,"Arial",DimGray);
objectCreate("WPRTitle",10,178,"WPR%",9,"Arial Narrow",DimGray);
objectCreate("SpreadLine3",60,229,"-----------",10,"Arial",DimGray);
objectCreate("SpreadLine2",60,200,"-----------",10,"Arial",DimGray);
objectCreate("SpreadLine1",60,187,"-----------",10,"Arial",DimGray);
objectCreate("SpreadPips",72,194,"PIPS",7,"Arial Narrow",SkyBlue);
objectCreate("SpreadTitle",61,178,"SPREAD",9,"Arial Narrow",DimGray);
objectCreate("SpreadValue",68,206,DoubleToStr(9,1),18,"Arial",White);
objectCreate("MAXoverValue1",69,271,"p",20,"Wingdings 3",Lime);
objectCreate("MAXoverValue2",69,271,"q",20,"Wingdings 3",Red);
objectCreate("MAXoverChart",64,259,"CURRENT",7,"Arial Narrow",SkyBlue);
objectCreate("MAXoverLine1",60,252,"-----------",10,"Arial",DimGray);
objectCreate("MAXoverLine2",60,265,"-----------",10,"Arial",DimGray);
objectCreate("MAXoverTitle",70,243,"MA-X",9,"Arial Narrow",DimGray);
objectCreate("BarsLine1",60,314,"----------------------",10,"Arial",DimGray);
objectCreate("BarsLine2",60,336,"----------------------",10,"Arial",DimGray);
objectCreate("BarsLine3",60,377,"----------------------",10,"Arial",DimGray);
objectCreate("BarsTitle",67,306,"BAR % METER",9,"Arial Narrow",DimGray);
object3Create("Bar_5",132,335);
object3Create("Bar_4",114,335);
object3Create("Bar_3",96,335);
object3Create("Bar_2",78,335);
object3Create("Bar_1",60,335);
objectCreate("B_5",134,320,"B5",7,"Arial Narrow",SkyBlue);
objectCreate("B_4",116,320,"B4",7,"Arial Narrow",SkyBlue);
objectCreate("B_3",98,320,"B3",7,"Arial Narrow",SkyBlue);
objectCreate("B_2",80,320,"B2",7,"Arial Narrow",SkyBlue);
objectCreate("B_1",62,320,"B1",7,"Arial Narrow",SkyBlue);
objectCreate("BarsPercent",52,330,"%",7,"Arial Narrow",Silver);
objectCreate("Bar_Value1",62,330,DoubleToStr(9,1),8,"Arial",White);
objectCreate("Bar_Value2",80,330,DoubleToStr(9,1),8,"Arial",White);
objectCreate("Bar_Value3",98,330,DoubleToStr(9,1),8,"Arial",White);
objectCreate("Bar_Value4",116,330,DoubleToStr(9,1),8,"Arial",White);
objectCreate("Bar_Value5",134,330,DoubleToStr(9,1),8,"Arial",White);
objectCreate("BarsSlowing",70,385,"Slowing Down",8,"Arial",Silver);
objectCreate("BarsSpeeding",70,385,"Speeding Up",8,"Arial",Silver);
objectCreate("BarsStopped",83,385,"Stopped",8,"Arial",Silver);
objectCreate("BarsSteady",85,385,"Steady",8,"Arial",Silver);
objectCreate("SignalLine1",10,336,"---------",10,"Arial",DimGray);
objectCreate("SignalLine2",10,377,"---------",10,"Arial",DimGray);
objectCreate("SignalTitle",9,327,"SIGNAL",9,"Arial Narrow",DimGray);
objectCreate("SignalUp",10,342,"p",28,"Wingdings 3",Lime);
objectCreate("SignalDown",10,342,"q",28,"Wingdings 3",Red);
objectCreate("SignalWait",10,342,"6",28,"Wingdings",Silver);
WindowRedraw();
}
void objectCreate(string name,int x,int y,string text="-",int size=42,
string font="Arial",color colour=CLR_NONE)
{
ObjectCreate(name,OBJ_LABEL,0,0,0);
ObjectSet(name,OBJPROP_CORNER,3);
ObjectSet(name,OBJPROP_COLOR,colour);
ObjectSet(name,OBJPROP_XDISTANCE,x);
ObjectSet(name,OBJPROP_YDISTANCE,y);
ObjectSetText(name,text,size,font,colour);
}
void object2Create(string name,int x,int y,string text="_",int size=42,
string font="Arial",color colour=CLR_NONE)
{
ObjectCreate(name,OBJ_LABEL,0,0,0);
ObjectSet(name,OBJPROP_CORNER,3);
ObjectSet(name,OBJPROP_COLOR,colour);
ObjectSet(name,OBJPROP_XDISTANCE,x);
ObjectSet(name,OBJPROP_YDISTANCE,y);
ObjectSetText(name,text,size,font,colour);
}
void object3Create(string name,int x,int y,string text="I",int size=36,
string font="Arial Bold",color colour=CLR_NONE)
{
ObjectCreate(name,OBJ_LABEL,0,0,0);
ObjectSet(name,OBJPROP_CORNER,3);
ObjectSet(name,OBJPROP_COLOR,colour);
ObjectSet(name,OBJPROP_XDISTANCE,x);
ObjectSet(name,OBJPROP_YDISTANCE,y);
ObjectSetText(name,text,size,font,colour);
}
void objectBlank()
{
ObjectSet("M_1_90",OBJPROP_COLOR,CLR_NONE);
ObjectПоказано первые 50% кода (символов: 46962)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.