min-micro-trading.mq5
Похожие материалы по тегам
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «min-micro-trading.mq5» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
Индикатор для MetaTrader 5, отображающий на графике сводную таблицу сигналов по шести таймфреймам и пяти техническим индикаторам. Таблица строится из графических объектов-меток и показывает состояние каждого индикатора на каждом таймфрейме, а также итоговый сигнал по всем индикаторам.
В коде используются встроенные функции iRSI, iSAR, iMA, iMACD и iADX для получения значений индикаторов. На основе этих значений формируются сигналы покупки, продажи или отсутствия сигнала, которые отображаются в виде символов шрифта Wingdings. Итоговый сигнал по всем индикаторам выводится отдельно для каждого таймфрейма.
Индикатор не содержит торговых операций и не предназначен для автоматической торговли. Он служит вспомогательным инструментом для визуального анализа рыночной ситуации на разных таймфреймах.
Поиск по коду файла
#property indicator_chart_window
extern int scaleX=20,
scaleY=15,
offSetX=25, // 35
offSetY=20, //20
fontSize=15,
corner=4,
symbolCodeBuy=217,
symbolCodeSell=218,
symbolCodeNoSignal=216,
allBuy=200,
allSell=202;
extern color signalBuyColor=Blue, //Strong Up
signalSellColor=Lime, //Strong Down
noSignalColor=Red,
allSellColor=OrangeRed,
allBuyColor=Blue,
textColor=Red;
int rsibuy[8],rsisell[8],sarbuy[8],sarsell[8],mabuy[8],masell[8],macdbuy[8],macdsell[8],adxbuy[8],adxsell[8],allsell[1],allbuy[1];
int period[]={ 5,15,30,60,240,1440};
string periodString[]={ "M5","M15","M30","H1","H4","D1"};
string signalName[]={"RSI","SAR","MA","MACD","ADX","ALL"};
int init()
{
// код доступен только после оплаты
}
int deinit()
{
Comment(" " );
for(int x=0;x<6;x++)
for(int y=0; y<6;y++)
{
ObjectDelete("signal"+x+y);
}
for( x=0;x<6;x++)
{
ObjectDelete("textPeriod");
}
for( y=0;y<6;y++)
{
ObjectDelete("textSignal");
}
return(0);
}
int start()
{
// код доступен только после оплаты
}
for(int x=0;x<6;x++)
for(int y=0; y<5;y++)
{
ObjectCreate("signal"+x+y,OBJ_LABEL,0,0,0,0,0);
ObjectSet("signal"+x+y,OBJPROP_CORNER,corner);
ObjectSet("signal"+x+y,OBJPROP_XDISTANCE,x*scaleX + offSetX);
ObjectSet("signal"+x+y,OBJPROP_YDISTANCE,y*scaleY+offSetY);
ObjectSetText("signal"+x+y,CharToStr(symbolCodeNoSignal),fontSize,"Wingdings",noSignalColor);
}
for( x=0;x<6;x++)
{
ObjectCreate("textPeriod"+x,OBJ_LABEL,0,0,0,0,0);
ObjectSet("textPeriod"+x,OBJPROP_CORNER,corner);
ObjectSet("textPeriod"+x,OBJPROP_XDISTANCE,x*scaleX+offSetX);
ObjectSet("textPeriod"+x,OBJPROP_YDISTANCE,offSetY-10);
ObjectSetText("textPeriod"+x,periodString[x],8,"Tahoma",textColor);
}
for( y=0;y<6;y++)
{
ObjectCreate("textSignal"+y,OBJ_LABEL,0,0,0,0,0);
ObjectSet("textSignal"+y,OBJPROP_CORNER,corner);
ObjectSet("textSignal"+y,OBJPROP_YDISTANCE,y*scaleY+offSetY+8);
ObjectSet("textSignal"+y,OBJPROP_XDISTANCE,offSetX-25);
ObjectSetText("textSignal"+y,signalName[y],8,"Tahoma",textColor);
}
for( int a=0;a<6;a++)
{
if(iRSI(NULL,period[a],14,PRICE_CLOSE,0) >50) //Buy
{
ObjectSetText("signal"+a+"0",CharToStr(symbolCodeBuy),fontSize,"Wingdings",signalBuyColor);
rsibuy[a]=1;
rsisell[a]=0;
}
else if(iRSI(NULL,period[a],14,PRICE_CLOSE,0) <50) //Sell
{
ObjectSetText("signal"+a+"0",CharToStr(symbolCodeSell),fontSize,"Wingdings",signalSellColor);
rsisell[a]=1;
rsibuy[a]=0;
}
else
{
ObjectSetText("signal"+a+"0",CharToStr(symbolCodeNoSignal),fontSize,"Wingdings",noSignalColor);
rsisell[a]=0;
rsibuy[a]=0;
}
}
for( a=0;a<6;a++)
{
if(iSAR(NULL,period[a],0.02,0.2,0)< Ask) //buy
{
ObjectSetText("signal"+a+"1",CharToStr(symbolCodeBuy),fontSize,"Wingdings",signalBuyColor);
sarbuy[a]=1;
sarsell[a]=0;
}
else
{
ObjectSetText("signal"+a+"1",CharToStr(symbolCodeSell),fontSize,"Wingdings",signalSellColor);
sarsell[a]=1;
sarbuy[a]=0;
}
}
for( a=0;a<6;a++)
{
if(iMA(NULL,period[a],5,0,MODE_EMA,PRICE_CLOSE,0) > iMA(NULL,period[a],20,0,MODE_SMA,PRICE_CLOSE,0)
&& iMA(NULL,period[a],5,0,MODE_EMA,PRICE_CLOSE,0) > iMA(NULL,period[a],10,0,MODE_EMA,PRICE_CLOSE,0))
{
ObjectSetText("signal"+a+"2",CharToStr(symbolCodeBuy),fontSize,"Wingdings",signalBuyColor);
mabuy[a]=1;
masell[a]=0;
}
else if(iMA(NULL,period[a],5,0,MODE_EMA,PRICE_CLOSE,0) < iMA(NULL,period[a],20,0,MODE_SMA,PRICE_CLOSE,0)
&& iMA(NULL,period[a],5,0,MODE_EMA,PRICE_CLOSE,0) < iMA(NULL,period[a],10,0,MODE_EMA,PRICE_CLOSE,0))
{
ObjectSetText("signal"+a+"2",CharToStr(symbolCodeSell),fontSize,"Wingdings",signalSellColor);
masell[a]=1;
mabuy[a]=0;
}
else
{
ObjectSetText("signal"+a+"2",CharToStr(symbolCodeNoSignal),fontSize,"Wingdings",noSignalColor);
masell[a]=0;
mabuy[a]=0;
}
}
for( a=0;a<6;a++)
{
double main=iMACD(NULL,period[a],12,26,9,PRICE_CLOSE,MODE_MAIN,1);
double signal=iMACD(NULL,period[a],12,26,9,PRICE_CLOSE,MODE_SIGNAL,1);
if(main > signal && signal >0) // for M5 and M15
{
ObjectSetText("signal"+a+"3",CharToStr(symbolCodeBuy),fontSize,"Wingdings",signalBuyColor);
macdbuy[a]=1;
macdsell[a]=0;
}
else if(main > signal && main >0) // for M30 and H1
{
ObjectSetText("signal"+a+"3",CharToStr(symbolCodeBuy),fontSize,"Wingdings",signalBuyColor);
macdbuy[a]=2;
macdsell[a]=0;
}
else if(main > signal && main <0) // for H4 and D1
{
ObjectSetText("signal"+a+"3",CharToStr(symbolCodeBuy),fontSize,"Wingdings",signalBuyColor);
macdbuy[a]=3;
macdsell[a]=0;
}
else if(main <signal && signal < 0) // for M5 and M15
{
ObjectSetText("signal"+a+"3",CharToStr(symbolCodeSell),fontSize,"Wingdings",signalSellColor);
macdbuy[a]=0;
macdsell[a]=1;
}
else if(main <signal && main < 0) // for M30 and H1
{
ObjectSetText("signal"+a+"3",CharToStr(symbolCodeSell),fontSize,"Wingdings",signalSellColor);
macdbuy[a]=0;
macdsell[a]=2;
}
else if(main <signal && main > 0) // for H4 and D1
Показано первые 50% кода (символов: 10363)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.