Попробуйте вот так:
double trend = iCustom (Symbol(),0,"trend",trend_period,0,0); Print("trend = ",trend);Строка принта покажет в журнале какое же значение лежит в переменной trend - мож там вообще нули (мож Вы iCustom() запросили не правильно...) Кто ж его знает...
не правильно прописанны стопы и профиты
OrderSend (Symbol(),OP_SELL,lots, Bid,3, Bid-sl*Point, Bid+tp*Point, LightGreen );//не торгует. bid и ask
а должно быть так
OrderSend (Symbol(),OP_SELL,lots, Bid,3, Ask+sl*Point, Bid-tp*Point, LightGreen );
не правильно прописанна линия - должно быть например так
double PriseSell = Bid;
string otkat_line ="LiniyaOtkata";
ObjectCreate(otkat_line, OBJ_HLINE, 0, 0, 0);
ObjectSet(otkat_line, OBJPROP_PRICE1, PriseSell);
не правильно прописанна линия - должно быть например так
double PriseSell = Bid;
string otkat_line ="LiniyaOtkata";
ObjectCreate(otkat_line, OBJ_HLINE, 0, 0, 0);
ObjectSet(otkat_line, OBJPROP_PRICE1, PriseSell);
спасибо за советы.
буду пробовать.
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
что то не селит советник. не пойму от чего. никак не пойму как выставить горизонтальную линию на расстоянии - вместо ордера.
спасибо.
//+------------------------------------------------------------------+
//| RA.mq4 |
//| |
//| |
//+------------------------------------------------------------------+
//--- input parameters
extern bool sell = 1; // разрешение продавать
extern bool buy = 1;
extern double lots = 0.2;
extern int sl = 50;
extern int tp = 100;
extern int trend_period = 55; //есть индикатор trend. с периодом trend_period
extern double trend_lev_b = 0.1; // на этом уровне индикатора должен быть ордер
extern double trend_lev_s = -0.1;
extern int otkat = 50; // на этом расстоянии на графике цены, при достижении индикатором trend
extern int order = 20; // уровня trend_lev должна рисоваться горизонтальная линия "otkat_line".
// если ордер buy - ниже. на величину otkat
// если ордер sell - выше
// при достижении ценой этой горизонтальной линии,
// выставляеться ордер на расстояние order
extern double bez = 15;
extern double tral_step = 15;
extern double tral_start = 10;
//+------------------------------------------------------------------+
//| expert initialization function |
//+------------------------------------------------------------------+
int init()
{
//----
//----
return(0);
}
//+------------------------------------------------------------------+
//| expert deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----
//----
return(0);
}
//+------------------------------------------------------------------+
//| expert start function |
//+------------------------------------------------------------------+
int start()
{
//----
double trend = iCustom (Symbol(),0,"trend",trend_period,0,0);
string = "otkat_line"; // объявлял otkat_line. неудачно...
//покупка
if (trend>trend_lev_b && buy==1 )
{
OrderSend (Symbol(),OP_BUY, lots, Ask,3, Bid-sl*Point, Bid+tp*Point, Aqua);
ObjectCreate ( "otkat_line", OBJ_HLINE, 0 );// хотел что бы рисовал горизонтальную линию
}
//продажа
if (trend<trend_lev_s && sell==1 )
{
OrderSend (Symbol(),OP_SELL,lots, Bid,3, Bid-sl*Point, Bid+tp*Point, LightGreen );//не торгует. bid и ask
//много раз менял
}
//----
return(0);
}
//+------------------------------------------------------------------+