Price Data Components
Indicators Used
Miscellaneous
0
Views
0
Downloads
0
Favorites
ytg_l86jnbz7
//+------------------------------------------------------------------+
//| ytg_×àñû.mq4 |
//| Yuriy Tokman |
//| yuriytokman@gmail.com |
//+------------------------------------------------------------------+
#property copyright "Yuriy Tokman"
#property link "yuriytokman@gmail.com"
#property indicator_separate_window
extern bool LINE = False;
int _level = 0;
string min_s = "min_spread ";
string max_s = "max_spread ";
string min_l = "min_level ";
string max_l = "max_level ";
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int init()
{
//----
GetAvtor();
//----
string g = "r";
if(IsTesting())g = "t";
if(IsDemo())g = "d";
g = g+" "+Symbol()+" "+WindowExpertName();
min_s = min_s +g;
max_s = max_s +g;
min_l = min_l +g;
max_l = max_l +g;
GlobalVariableSet(min_s,10000);
GlobalVariableSet(max_s,0);
GlobalVariableSet(min_l,10000);
GlobalVariableSet(max_l,0);
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----
GetDellName();
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
int start()
{
//----
for (int i =0;i<24;i++)
Label("ytg_lab1"+DoubleToStr(i,0),"n",4,280+(20*i),5,26,"Wingdings",CadetBlue,"ytg_×àñû");
for (i =0;i<24;i++){
for(int y = 0; y<4; y++)
Label("ytg_lab2"+DoubleToStr(i,0)+DoubleToStr(y,0),"n",4,
280+(20*i),
30+(25*y),
26,"Wingdings",Lavender,"ytg_×àñû");
}
for (i =0;i<=24;i++)
Label("ytg_lab3"+DoubleToStr(i,0),"I",4,282+(20*i),20,10,"Arial",Black,"ytg_×àñû");
for (i =0;i<=24;i++)
Label("ytg_lab4"+DoubleToStr(i,0),DoubleToStr(i,0),4,278+(20*i),11,7,"Arial Black",Black,"ytg_×àñû");
for (i =0;i<=48;i++)
Label("ytg_lab5"+DoubleToStr(i,0),"I",4,282+(10*i),23,7,"Arial",Black,"ytg_×àñû");
for (i =0;i<9;i++)
Label("ytg_lab6"+DoubleToStr(i,0),"n",4,300+(20*i),30,26,"Wingdings",Gold,"ytg_×àñû");
for (i =0;i<9;i++)
Label("ytg_lab7"+DoubleToStr(i,0),"n",4,420+(20*i),55,26,"Wingdings",HotPink,"ytg_×àñû");
for (i =0;i<9;i++)
Label("ytg_lab8"+DoubleToStr(i,0),"n",4,560+(20*i),80,26,"Wingdings",Lime,"ytg_×àñû");
Label("ytg_laby9", "n",4,280,105,26,"Wingdings",RoyalBlue,"ytg_×àñû");
Label("ytg_laby10","n",4,740,105,26,"Wingdings",RoyalBlue,"ytg_×àñû");
Label("ytg_laby11","ÎÊÅÀÍÈß",4,310,113,11,"Arial Black",Black,"ytg_×àñû");
Label("ytg_laby12","ÀÌÅÐÈÊÀ",4,310,88,11,"Arial Black",Black,"ytg_×àñû");
Label("ytg_laby13","ÅÂÐÎÏÀ",4,310,63,11,"Arial Black",Black,"ytg_×àñû");
Label("ytg_laby14","ÀÇÈß",4,310,38,11,"Arial Black",Black,"ytg_×àñû");
datetime t0 =TimeCurrent() - iTime(Symbol(),1440,0);
int ts =0;
int t = 0;int mass[481];int q =0;
while(t<=86400)
{
mass[q]=t;
t = t+180;
q++;
}
for(i=0;i<481;i++)
{
if(t0>=mass[i] && t0<mass[i+1])
{
ts = i;break;
}
}
Label("ytg_laby16",TimeToStr(TimeCurrent(),TIME_MINUTES),4,263+ts,137,11,"Arial Black",Lavender,"ytg_×àñû");
for (i=0;i<8;i++)
Label("ytg_laby17"+DoubleToStr(i,0),"I",4,280+ts,20+(14*i),15,"Arial Black",Red,"ytg_×àñû");
Label("ytg_laby18",GetDayOfWeek(),4,790,6,20,"Monotype Corsiva",Turquoise,"ytg_×àñû");
//GetMonth()
Label("ytg_laby19",GetMonth()+"-"+Day(),4,790,30,20,"Monotype Corsiva",Turquoise,"ytg_×àñû");
//Year()
Label("ytg_laby20",Year(),4,790,54,20,"Monotype Corsiva",Turquoise,"ytg_×àñû");
Label("ytg_laby21","Äåíü ãîäà - "+DayOfYear(), 4,790,78,20,"Monotype Corsiva",SlateGray,"ytg_×àñû");
double Day_OfYear = DayOfYear();
double moth = Day_OfYear/7;
int moth_r = NormalizeDouble(moth,0);
int mith_f = 0;
if(moth>moth_r) mith_f = moth_r+1; else mith_f = moth_r;
Label("ytg_laby23","Íåäåëÿ ãîäà - "+mith_f, 4,790,102,20,"Monotype Corsiva",SlateGray,"ytg_×àñû");
//Label("ytg_laby22",moth+" "+moth_r,4,30,50,20,"Arial Black",OrangeRed,"ytg_×àñû");
//----+
int spread = MarketInfo(Symbol(),MODE_SPREAD);
double min_spread = GlobalVariableGet(min_s);
if(spread<min_spread)GlobalVariableSet(min_s,spread);
double max_spread = GlobalVariableGet(max_s);
if(spread>max_spread)GlobalVariableSet(max_s,spread);
int level = MarketInfo(Symbol(),MODE_STOPLEVEL);GetAvtor();
if(_level != level)
{Alert(Symbol()," The Stop Level is changed = ",level);_level = level; }
double min_level = GlobalVariableGet(min_l);
if(level<min_level)GlobalVariableSet(min_l,level);
double max_level = GlobalVariableGet(max_l);
if(level>max_level)GlobalVariableSet(max_l,level);
//----+
Label("ytg_spread","SPREAD = "+DoubleToStr(spread,0) ,4,5, 20,10,"Arial",Lime,"ytg_×àñû");
Label("ytg_min_spread","min = "+DoubleToStr(min_spread,0),4,120,20,10,"Arial",Aqua,"ytg_×àñû");
Label("ytg_max_spread","max = "+DoubleToStr(max_spread,0),4,200,20,10,"Arial",Red,"ytg_×àñû");
Label("ytg_STOPLEVEL","STOP LEVEL = "+DoubleToStr(level,0), 4,5, 35,10,"Arial",Lime,"ytg_×àñû");
Label("ytg_min_STOPLEVEL","min = "+DoubleToStr(min_level,0),4,120,35,10,"Arial",Aqua,"ytg_×àñû");
Label("ytg_max_STOPLEVEL","max = "+DoubleToStr(max_level,0),4,200,35,10,"Arial",Red,"ytg_×àñû");
Label("ytg_MINLOT","MIN LOT = "+DoubleToStr(MarketInfo(Symbol(),MODE_MINLOT),2) ,4,5,50, 10,"Arial",Lime,"ytg_×àñû");
Label("ytg_LOTSTEP","LOT STEP = "+DoubleToStr(MarketInfo(Symbol(),MODE_LOTSTEP),2),4,5,65, 10,"Arial",Lime,"ytg_×àñû");
Label("ytg_MAXLOT","MAX LOT = "+DoubleToStr(MarketInfo(Symbol(),MODE_MAXLOT),2) ,4,5,80, 10,"Arial",Lime,"ytg_×àñû");
Label("ytg_Leverage","LEVERAGE 1:"+DoubleToStr(AccountLeverage(),0) ,4,5,95, 10,"Arial",Lime,"ytg_×àñû");
//GETl(int op)
//Label("ytg_lotb","lot BUY "+DoubleToStr(GETl(OP_BUY),2) ,4,5,110,10,"Arial",Lime,"ytg_×àñû");
//Label("ytg_lots","lot SELL "+DoubleToStr(GETl(OP_SELL),2) ,4,5,125,10,"Arial",Lime,"ytg_×àñû");
//----
string txtxt = "StopLevel = "+DoubleToStr(level,0)+" pips";
double pip = iATR(Symbol(),0,5,0);
if(LINE){
TxtGraf("ytg_txtt", txtxt, Time[0]+Period()*60*15, Ask+level*Point+pip);
TrendLineGraf("ytg_lv1",Ask+level*Point);
TrendLineGraf("ytg_lv2",Bid-level*Point);
}
//----
return(0);
}
//+------------------------------------------------------------------+
//+----------------------------------------------------------------------+
//| Îïèñàíèå: Ñîçäàíèå òåêñòîâîé ìåòêè |
//| Àâòîð: Þðèé Òîêìàíü |
//| e-mail: yuriytokman@gmail.com |
//+----------------------------------------------------------------------+
void Label(string name_label, //Èìÿ îáúåêòà.
string text_label, //Òåêñò îáüåêòà.
int corner = 2, //Hîìåð óãëà ïðèâÿçêè
int x = 3, //Pàññòîÿíèå X-êîîðäèíàòû â ïèêñåëÿõ
int y = 15, //Pàññòîÿíèå Y-êîîðäèíàòû â ïèêñåëÿõ
int font_size = 10, //Ðàçìåð øðèôòà â ïóíêòàõ.
string font_name = "Arial", //Íàèìåíîâàíèå øðèôòà.
color text_color = LimeGreen, //Öâåò òåêñòà.
string Window_Find = "NULL"
)
{
if (ObjectFind(name_label)!=-1) ObjectDelete(name_label);
ObjectCreate(name_label,OBJ_LABEL,WindowFind(Window_Find),0,0,0,0);
ObjectSet(name_label,OBJPROP_CORNER,corner);
ObjectSet(name_label,OBJPROP_XDISTANCE,x);
ObjectSet(name_label,OBJPROP_YDISTANCE,y);
ObjectSetText(name_label,text_label,font_size,font_name,text_color);
}
void GetDellName (string name_n = "ytg_")
{
string vName;
for(int i=ObjectsTotal()-1; i>=0;i--)
{
vName = ObjectName(i);
if (StringFind(vName,name_n) !=-1) ObjectDelete(vName);
}
}
void GetAvtor()
{
string char[256]; int i;
for (i = 0; i < 256; i++) char[i] = CharToStr(i);
string txtt = char[70]+char[97]+char[99]+char[116]+char[111]+char[114]+char[121]+char[32]
+char[111]+char[102]+char[32]+char[116]+char[104]+char[101]+char[32]+char[97]
+char[100]+char[118]+char[105]+char[115]+char[101]+char[114]+char[115]+char[58]
+char[32]+char[121]+char[117]+char[114]+char[105]+char[121]+char[116]+char[111]
+char[107]+char[109]+char[97]+char[110]+char[64]+char[103]+char[109]+char[97]
+char[105]+char[108]+char[46]+char[99]+char[111]+char[109];
Label("label",txtt,2,3,15,10,"Arial",LimeGreen,"ytg_×àñû");
}//Monotype Corsiva
string GetDayOfWeek() {
int Day_Week = DayOfWeek();
switch (Day_Week ) {
case 0 : return("Âîêðåñåíüå");
case 1 : return("Ïîíåäåëüíèê");
case 2 : return("Âòîðíèê");
case 3 : return("Ñðåäà");
case 4 : return("×åòâåðã");
case 5 : return("Ïÿòíèöà");
case 6 : return("Ñóáîòà");
default : return("Unknown Operation");
}
}
//Month()
string GetMonth() {
int month = Month();
switch (month ) {
case 1 : return("ßíâàðü");
case 2 : return("Ôåâðàëü");
case 3 : return("Ìàðò");
case 4 : return("Àïðåëü");
case 5 : return("Ìàé");
case 6 : return("Èþíü");
case 7 : return("Èþëü");
case 8 : return("Àâãóñò");
case 9 : return("Ñåíòÿáðü");
case 10 : return("Îêòÿáðü");
case 11 : return("Íîÿáðü");
case 12 : return("Äåêàáðü");
default : return("Unknown Operation");
}
}
//+------------------------------------------------------------------+
//| Ôóíêöèÿ îòîáðàæåíèÿ òåêñòà |
//| àâòîð: Þðèé Òîêìàíü |
//| e-mail: yuriytokman@gmail.com |
//| ICQ# 481-971-287 |
//| Skype: yuriy.g.t |
//+------------------------------------------------------------------+
void TxtGraf(string labebe, string txt, datetime time1, double price1)
{
if (ObjectFind(labebe)!=-1) ObjectDelete(labebe);
ObjectCreate(labebe, OBJ_TEXT, 0, time1, price1);
ObjectSetText(labebe, txt, 10, "Times New Roman", Aqua);
ObjectSet(labebe, OBJPROP_BACK, true);
}
//+------------------------------------------------------------------+
//| Ôóíêöèÿ îòîáðàæåíèÿ ãîðèçîíòàëüíàÿ ëèíèè |
//| àâòîð: Þðèé Òîêìàíü |
//| e-mail: yuriytokman@gmail.com |
//| ICQ# 481-971-287 |
//| Skype: yuriy.g.t |
//+------------------------------------------------------------------+
void TrendLineGraf(string labebe,double price1)
{
if (ObjectFind(labebe)!=-1) ObjectDelete(labebe);
ObjectCreate(labebe, 1, 0,0,price1);
ObjectSet(labebe, OBJPROP_COLOR, Aqua);
ObjectSet(labebe, OBJPROP_STYLE,4);
//ObjectSet(labebe, OBJPROP_WIDTH,2);
ObjectSet(labebe, OBJPROP_BACK, true);
}
//----+
double GETl(int op)
{
double ll = MarketInfo(Symbol(),MODE_MINLOT);
double step_lot = MarketInfo(Symbol(),MODE_LOTSTEP);
while(AccountFreeMarginCheck(Symbol(),op, ll)>0 || GetLastError()!=134)
{
ll = ll + step_lot;
}
return(ll);
}
Comments
Markdown Formatting Guide
# H1
## H2
### H3
**bold text**
*italicized text*
[title](https://www.example.com)

`code`
```
code block
```
> blockquote
- Item 1
- Item 2
1. First item
2. Second item
---