Scalp Bar 2 AA TT mtf (1)

Scalp Bar 2 AA TT mtf (1)最新版

更新日期:2022-03-16分类标签: 语言:中文平台:没限制

21 人已下载 手机查看

//+——————————————————————+
//| |
//| |
//| |
//+——————————————————————+
#property copyright “© Tankk, 20 февраля 2017, http://forexsystemsru.com/”
#property link “https://forexsystemsru.com/indikatory-foreks/86203-indikatory-sobranie-sochinenii-tankk.html” ///”https://forexsystemsru.com/1259817-post7617.html” ///https://forexsystemsru.com/1198113-post65.html” //http://forexsystemsru.com/indikatory-foreks-f41/”
#property version “1.11”
#property indicator_chart_window
#property indicator_buffers 2
//#property indicator_color1 clrAqua //Blue
//#property indicator_color2 clrGold //Red
//#property indicator_width1 1
//#property indicator_width2 1
//+————————Параметры———————————+
extern ENUM_TIMEFRAMES TimeFrame = PERIOD_CURRENT;
extern int CountBars = 2345; //Число баров на которых будет отображен сигнал
extern bool UseBars = true;
extern double Exponenta = 1.0;
extern bool UseStoch = true;
extern int StPeriod = 5;
extern int Slowing = 3;
extern int StMax = 70;
extern int StMin = 30;
extern bool UseRSI = true;
extern int RsiPeriod = 9;
extern int RsiMax = 70;
extern int RsiMin = 30;
extern bool UseCCI = true;
extern int CciPeriod = 9;
extern int CciMax = 90;
extern int CciMin = -90;
extern color ArrowUP = clrAqua, //White, //DarkTurquoise, //LimeGreen, //FireBrick, //Magenta,
ArrowDN = clrGold; //Red; //HotPink; //Orange; //SlateBlue; //DodgerBlue; //LightCyan; //Lavender;
extern int ArrGap = 3, //Дистанция от High/Low свечи
ArrCodUP = 233, //147, 116, 117, 234, //226
ArrCodDN = 234, //181, 233, //225
ArrSize = 1;
extern string SoundFile = “news.wav”; //”expert.wav”; // //”stops.wav” //”alert2.wav” //
extern int SIGNALBAR = 1; //На каком баре сигналить….
extern bool AlertsMessage = true, //false,
AlertsSound = true, //false,
AlertsEmail = false,
AlertsMobile = false;
input bool ArrowOnFirst = false;

//+——————————+
double ARRUP[], ARRDN[];
//+——————————+
double GAP; datetime TimeBar=0; string messageUP, messageDN;
string indicatorFileName;
bool returnBars;
//+——————————————————————+
//| Custom indicator initialization function |
//+——————————————————————+
int init()
{
GAP=ArrGap*Point; if (Digits==3 || Digits==5) GAP*=10; CountBars = fmax(CountBars,(StPeriod+RsiPeriod+CciPeriod)*5);
//——
IndicatorBuffers(2); IndicatorDigits(Digits); if (Digits==3 || Digits==5) IndicatorDigits(Digits-1);
//—— 2 распределенных буфера индикатора
SetIndexBuffer(0,ARRUP);
SetIndexBuffer(1,ARRDN);
//—— настройка параметров отрисовки
SetIndexStyle(0,DRAW_ARROW,EMPTY,ArrSize,ArrowUP); SetIndexArrow(0,ArrCodUP);
SetIndexStyle(1,DRAW_ARROW,EMPTY,ArrSize,ArrowDN); SetIndexArrow(1,ArrCodDN);
//——- значение 0 отображаться не будет
SetIndexEmptyValue(0,0.0);
SetIndexEmptyValue(1,0.0);

//—— отображение в DataWindow
SetIndexLabel(0,”Arrow SELL”);
SetIndexLabel(1,”Arrow BUY”);

indicatorFileName = WindowExpertName();
returnBars = TimeFrame == -99;
TimeFrame = MathMax(TimeFrame,_Period);

//—— “короткое имя” для DataWindow и подокна индикатора +++ и/или “уникальное имя индикатора”
IndicatorShortName(stringMTF(_Period)+”: Scalp Bar TT”);

//——
return(0);
}
//%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
//%%% Close0 vs Close1 AA MTF TT™ %%%
//%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
string stringMTF(int perMTF)
{
if (perMTF==0) perMTF=_Period;
if (perMTF==1) return(“M1”);
if (perMTF==5) return(“M5”);
if (perMTF==15) return(“M15”);
if (perMTF==30) return(“M30”);
if (perMTF==60) return(“H1”);
if (perMTF==240) return(“H4”);
if (perMTF==1440) return(“D1”);
if (perMTF==10080) return(“W1”);
if (perMTF==43200) return(“MN1”);
if (perMTF== 2 || 3 || 4 || 6 || 7 || 8 || 9 || /// нестандартные периоды для грфиков Renko
10 || 11 || 12 || 13 || 14 || 16 || 17 || 18) return(“M”+_Period);
//——
return(“Ошибка периода”);
}
//%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
//%%% Custom indicator deinitialization function &&&
//%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
int deinit() { /*ALL_OBJ_DELETE();*/ return(0); }
//%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
//%%% Custom indicator iteration function %%%
//%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
int start()
{
int i,counted_bars=IndicatorCounted();
if (counted_bars<0) return(-1);
if(counted_bars>0) counted_bars–;
int limit = MathMin(Bars-counted_bars,Bars-1);
if (returnBars) { ARRUP[0] = limit+1; return(0); }
if (TimeFrame!=_Period)
{
limit = (int)MathMax(limit,MathMin(Bars-1,iCustom(NULL,TimeFrame,indicatorFileName,-99,0,0)*TimeFrame/_Period));
for (i=limit; i>=0; i–)
{
int y = iBarShift(NULL,TimeFrame,Time[i]);
int x = y;
if (ArrowOnFirst)
{ if (i<Bars-1) x = iBarShift(NULL,TimeFrame,Time[i+1]); }
else { if (i>0) x = iBarShift(NULL,TimeFrame,Time[i-1]); else x = -1; }
ARRUP[i] = 0;
ARRDN[i] = 0;
if (y!=x)
{
ARRUP[i] = iCustom(NULL,TimeFrame,indicatorFileName,PERIOD_CURRENT,CountBars,UseBars,Exponenta,UseStoch,StPeriod,Slowing,StMax,StMin,UseRSI,RsiPeriod,RsiMax,RsiMin,UseCCI,CciPeriod,CciMax,CciMin,ArrowUP,ArrowDN,ArrGap,ArrCodUP,ArrCodDN,ArrSize,SoundFile,SIGNALBAR,AlertsMessage,AlertsSound,AlertsEmail,AlertsMobile,ArrowOnFirst,0,y);
ARRDN[i] = iCustom(NULL,TimeFrame,indicatorFileName,PERIOD_CURRENT,CountBars,UseBars,Exponenta,UseStoch,StPeriod,Slowing,StMax,StMin,UseRSI,RsiPeriod,RsiMax,RsiMin,UseCCI,CciPeriod,CciMax,CciMin,ArrowUP,ArrowDN,ArrGap,ArrCodUP,ArrCodDN,ArrSize,SoundFile,SIGNALBAR,AlertsMessage,AlertsSound,AlertsEmail,AlertsMobile,ArrowOnFirst,1,y);
}
}
return(0);
}
for(i=CountBars; i>=0; i–)
{
////bool buy=false, sell=false;

if(((Open[i]>Close[i] && Open[i+1]>Close[i+1] && Open[i+2]>Close[i+2] &&
Open[i+1]-Close[i+1]>(Open[i+2]-Close[i+2])*Exponenta) || !UseBars) &&
(iStochastic(NULL,0,StPeriod,StPeriod,Slowing,0,0,0,i)<StMin || !UseStoch) &&
(iRSI(NULL,0,RsiPeriod,0,i)<RsiMin || !UseRSI) &&
(iCCI(NULL,0,CciPeriod,0,i)<CciMin || !UseCCI)) ARRUP[i]=Low[i]-GAP; else ARRUP[i]=0; ///{buy=true;}

if(((Open[i]<Close[i] && Open[i+1]<Close[i+1] && Open[i+2]<Close[i+2] &&
Close[i+1]-Open[i+1]>(Close[i+2]-Open[i+2])*Exponenta) || !UseBars) &&
(iStochastic(NULL,0,StPeriod,StPeriod,Slowing,0,0,0,i)>StMax || !UseStoch) &&
(iRSI(NULL,0,RsiPeriod,0,i)>RsiMax || !UseRSI) &&
(iCCI(NULL,0,CciPeriod,0,i)>CciMax || !UseCCI)) ARRDN[i]=High[i]+GAP; else ARRDN[i]=0; ///{sell=true;}

//// if(buy)
//// ARRUP[i-1]=Low[i-1]-GAP; else ARRUP[i-1]=0;
////
//// if(sell)
//// ARRDN[i-1]=High[i-1]+GAP; else ARRDN[i-1]=0;
}
//+——————————————————————+
//+——————————————————————+

if (AlertsMessage || AlertsEmail || AlertsMobile || AlertsSound)
{
messageUP = (WindowExpertName()+” >> “+_Symbol+”, “+stringMTF(_Period)+” >> Arrow UP >> BUY”); //BearsBulls Alerts MTF TT
messageDN = (WindowExpertName()+” << “+_Symbol+”, “+stringMTF(_Period)+” << Arrow DN << SELL”); //BearsBulls Alerts MTF TT
//——
if (TimeBar!=Time[0] && ARRUP[SIGNALBAR] != 0) {
if (AlertsMessage) Alert(messageUP);
if (AlertsEmail) SendMail(_Symbol,messageUP);
if (AlertsMobile) SendNotification(messageUP);
if (AlertsSound) PlaySound(SoundFile); //”stops.wav” //”news.wav”
TimeBar=Time[0]; } //return(0);
//——
else
if (TimeBar!=Time[0] && ARRDN[SIGNALBAR] != 0) {
if (AlertsMessage) Alert(messageDN);
if (AlertsEmail) SendMail(_Symbol,messageDN);
if (AlertsMobile) SendNotification(messageDN);
if (AlertsSound) PlaySound(SoundFile); //”stops.wav” //”news.wav”
TimeBar=Time[0]; } //return(0);
} ///*конец* АЛЕРТОВ для всех…..
//+——————————————————————+
//+——————————————————————+
//—-
return(0);
}

//
//
//
//
//

string sTfTable[] = {“M1″,”M5″,”M15″,”M30″,”H1″,”H4″,”D1″,”W1″,”MN”};
int iTfTable[] = {1,5,15,30,60,240,1440,10080,43200};

string timeFrameToString(int tf)
{
for (int i=ArraySize(iTfTable)-1; i>=0; i–)
if (tf==iTfTable[i]) return(sTfTable[i]);
return(“”);
}
//+——————————————————————+
//+——————————————————————+
//+——————————————————————+
//+——————————————————————+
/*

3. Комбинация индикаторов CCI, RSI и Stochastic для 15 мин.

Индикаторы: CCI(14), RSI(14), Stochastic(14,3,3).
Временной отрезок: 15 мин.
Валютная пара: EUR\USD

Для индикаторов устанавливаем следующие уровни: CCI (-100; 0; +100), RSI (35; 65), Stochostic (80; 20).
При пересечении Stohastic значения 20 вверх, если остальные индикаторы вышли из зоны перепроданности (CCI -100, RSI 35), то входим на покупку.
Но, если хоть один из индикаторов не вышел из своей зоны, то не входим.
Для продажи индикатор Stohastic обязан пересечь значение 80 вниз. Индикатор CCI – значение + 100 вниз, и индикатор RSI – значение 65 вниз.

Но есть и исключение из правил. При сильном движении по тренду Stochastic и CCI беспорядочно движутся около своих должных уровней,
а RSI находится выше своей зоны и не часто его пересекает. Тогда входим в торги только при пересечении CCI значения 0, остальные индикаторы тоже обязаны покинуть свои зоны.

Как вошли, ставим стоп-лосс на предыдущую вершину тренда. Для профит рекомендую брать цель 1:2 (риск:прибыль).

Смысл этой комбинации в выходе из зон перекупленности\перепроданности.
Плюсы в то, что используемые индикаторы дополняют друг друга, и в результате повышают вероятность точного и прибыльного входа.

*/

 

如果你对文件有了解,请帮助投票!

If you are familiar with the file, please help vote!

平均评分 0 / 5. 投票数: 0

到目前为止还没有投票!成为第一位投票人。

相关资源

暂无评论

暂无评论...