//+------------------------------------------------------------------+
//| ProCent.mq4 |
//| Copyright 2018, AM2 |
//| http://www.forexsystems.biz |
//+------------------------------------------------------------------+
#property copyright "Copyright 2018, AM2"
#property link "http://www.forexsystems.biz"
#property version "1.00"
#property strict
#property indicator_chart_window
extern int font_size = 11; // Размер шрифта
extern int width = 2; // Толщина линий
color clbid=Gold;
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int OnInit()
{
//--- indicator buffers mapping
Comment("");
PutHLine("bid",Bid,Green);
PutHLine("tp",Bid+100*_Point,Blue);
PutHLine("sl",Bid-100*_Point,Red);
//---
return(INIT_SUCCEEDED);
}
//+------------------------------------------------------------------+
//| Indicator deinitialization function |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
{
remove_objects("tp");
remove_objects("bid");
remove_objects("sl");
if(!IsTesting()) Comment("");
}
//+------------------------------------------------------------------+
//| Горизонтальная линия |
//+------------------------------------------------------------------+
void PutHLine(string name,double p,color clr)
{
ObjectDelete(0,name);
ObjectCreate(0,name,OBJ_HLINE,0,0,p);
//--- установим цвет линии
ObjectSetInteger(0,name,OBJPROP_COLOR,clr);
//--- установим толщину линии
ObjectSetInteger(0,name,OBJPROP_WIDTH,width);
}
//+------------------------------------------------------------------+
//| Put Text Function |
//+------------------------------------------------------------------+
void Text(string name,string text,double price,datetime time, ENUM_ANCHOR_POINT anchor=ANCHOR_LEFT_LOWER,color clr=clrGold)
{
ObjectDelete(0,name);
//--- create a "Text" object
ObjectCreate(0,name,OBJ_TEXT,0,time,price);
//--- set the text
ObjectSetString(0,name,OBJPROP_TEXT,text);
//--- set the font of the text
ObjectSetString(0,name,OBJPROP_FONT,"Arial");
//--- set the font size
ObjectSetInteger(0,name,OBJPROP_FONTSIZE,font_size);
//--- set the method binding
ObjectSetInteger(0,name,OBJPROP_ANCHOR,anchor);
//--- set the color
ObjectSetInteger(0,name,OBJPROP_COLOR,clr);
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
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[])
{
//---
double bid=ObjectGetDouble(0,"bid",OBJPROP_PRICE);
double tp=ObjectGetDouble(0,"tp",OBJPROP_PRICE);
double sl=ObjectGetDouble(0,"sl",OBJPROP_PRICE);
double cbid=Bid;
double bidp=0;
double tpp=MathAbs(tp-bid)/bid*100;
double slp=MathAbs(sl-bid)/bid*(-100);
if(cbid>bid) bidp=MathAbs(cbid-bid)/bid*100;
if(cbid<bid) bidp=MathAbs(bid-cbid)/bid*(-100);
if(cbid>bid) clbid=Green;
if(cbid<bid) clbid=Red;
int day=1;
if(Period()==PERIOD_H4) day=2;
if(Period()==PERIOD_D1) day=6;
Text("slt",(string)NormalizeDouble(slp,2)+"%",sl,Time[0]+60*60*12*day,ANCHOR_LEFT_UPPER,Red);
Text("tpt",(string)NormalizeDouble(tpp,2)+"%",tp,Time[0]+60*60*12*day,ANCHOR_LEFT_LOWER,Blue);
Text("bidt",(string)NormalizeDouble(bidp,2)+"%",bid,Time[0]+60*60*12*day,ANCHOR_LEFT_LOWER,clbid);
//--- return value of prev_calculated for next call
return(rates_total);
}
//+------------------------------------------------------------------+
//----------------------------------------------
void remove_objects(string PreName)
{
string Obj_Name,Head;
for(int k=ObjectsTotal()-1; k>=0; k--)
{
Obj_Name=ObjectName(k);
Head=StringSubstr(Obj_Name,0,StringLen(PreName));
if (Head==PreName)ObjectDelete(Obj_Name);
}
}
тебе еще дают шанс заработать, пусть не большие(150$)деньги
Как это понимать?!.. Совсем не ставит или не сразу при открытии?!..
По другому без убыток не получится как не крути, цифры не обманешь!
Я уже перепробовал все варианты, только такой вариант как сейчас дает без убыток. Если закрывать оба ордера одновременно, то Вы сами видели, что будет небольшой убыток.
Andrju81