[ВНИМАНИЕ, ТЕМА ЗАКРЫТА!] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда. - страница 927

 
RekkeR:
На этом примере, если это не очень сложно, не могли бы Вы ткнуть носом.
:)))

int init()
{
int draw_begin;
string short_name;
//---- drawing settings
SetIndexStyle(0,DRAW_LINE);
SetIndexShift(0,MA_Shift);
IndicatorDigits(MarketInfo(Symbol(),MODE_DIGITS));
if(MA_Period<2) MA_Period=13;
draw_begin=MA_Period-1;
//---- indicator short name
switch(MA_Method)
{
case 1 : short_name="EMA("; draw_begin=0; break;
case 2 : short_name="SMMA("; break;
case 3 : short_name="LWMA("; break;
default :
MA_Method=0;
short_name="SMA(";
}
IndicatorShortName("");
SetIndexDrawBegin(0,draw_begin);
//---- indicator buffers mapping
SetIndexBuffer(0,ExtMapBuffer);
SetIndexLabel(0,"");
//---- initialization done
return(0);
}
Должно помочь
 

Попробовал редактировать сообщение, пишет слишком большой текст и не вставляет с изменениями.

Это отредактированная часть кода или дополнительная порция?

 
dimon74:
Здравствуйте! Ребята, подскажите пожалуйста: slippage - Значение максимального проскальзывания в пунктах. Что это и для чего он служит? Постаянно ставлю ноль. Может есть смысл поменять. И может ли его менять мой ДЦ? Спасибо заранее!

slippage - это максимальное значение проскальзывания при открытии сделки брокером (т.е. по прежнему хотите совершить сделку по даже худшей для вас цене), которое вы допускаете, ставьте допустим - 2 или 3 или 5. "0" - это слишком маленький допуск, который вы определяете брокеру в условиях реального рынка. 

 
RekkeR:

Попробовал редактировать сообщение, пишет слишком большой текст и не вставляет с изменениями.

Это отредактированная часть кода или дополнительная порция?


Это только функция init(), которую и нужно исправить

А для вставки кода используется кнопка SRC

 
Vinin:


Это только функция init(), которую и нужно исправить

А для вставки кода используется кнопка SRC

Спасибо Виктор, на выходных займусь самообразованием, занятное это дело, кодизм.

О результатах - доложу!

 

Мужики, я вас прекрасно понимаю что вас бесит когда задают одни и те же вопросы в этой теме по сто раз,

я бы конечно как начинающий сам бы разобрался,самому ведь интересно все делать

но я всегда и до сих пор в тупике по поводу того что советник тестируется но не пашет на демо и реале.

при тестировании ошибок нет никаких, на демо и реале смайл улыбиться,позиции не открывает

Может быть проблема не в советнике а в ДЦ?

extern double StopLoss=1000.0;
extern double TakeProfit=1000.0;
extern double Lots=1.0;
extern int total;


int start() {

int dg;
double Price_1,Price_2,min,max,pa,pb,pt;

pt=MarketInfo(Symbol(),MODE_POINT);
dg=MarketInfo(Symbol(),MODE_DIGITS);
pa=MarketInfo(Symbol(),MODE_ASK);
pb=MarketInfo(Symbol(),MODE_BID);
Price_1=pb;
Price_2=pa;
min=iLow(NULL,0,2);
max=iHigh(NULL,0,2);
total=OrdersTotal();

double slB=NormalizeDouble(pa-StopLoss*pt,dg);
double tpB=NormalizeDouble(pa+TakeProfit*pt,dg);
double slS=NormalizeDouble(pb+StopLoss*pt,dg);
double tpS=NormalizeDouble(pb-TakeProfit*pt,dg);

  if(total<1) 
  {
   if(Price_1>max)
      OrderSend(Symbol(),OP_BUY,Lots,pa,2,slB,tpB,"My order#",16384,0,Green);

   if(Price_2<min)
      OrderSend(Symbol(),OP_SELL,Lots,pb,2,slS,tpS,"My order#",16384,0,Green);
  }

}

Помогите?

 
artmedia70:

Поищите ордерочек в истории, если найдёте - сравните цену его закрытия OrderClosePrice() с уровнем его СтопЛосс OrderStopLoss()

Если они равны - значит позиция закрылась по стопу.

приблизительно понял, спасибо,буду разбираться после того как решу первую проблему
 
gheka:

Мужики, я вас прекрасно понимаю что вас бесит когда задают одни и те же вопросы в этой теме по сто раз,


какие ошибки выдает, когда не открывает позицию? Можно попробовать сделать так

 if(total<1) 
  {
   if(Price_1>max)
      OrderSend(Symbol(),OP_BUY,Lots,Ask,100,slB,tpB,"My order#",16384,0,Green);

   if(Price_2<min)
      OrderSend(Symbol(),OP_SELL,Lots,Bid,100,slS,tpS,"My order#",16384,0,Green);
  }
 
gheka:

Мужики, я вас прекрасно понимаю что вас бесит когда задают одни и те же вопросы в этой теме по сто раз,

я бы конечно как начинающий сам бы разобрался,самому ведь интересно все делать

но я всегда и до сих пор в тупике по поводу того что советник тестируется но не пашет на демо и реале.

при тестировании ошибок нет никаких, на демо и реале смайл улыбиться,позиции не открывает

Может быть проблема не в советнике а в ДЦ?

Помогите?


Возможно Ваш ДЦ не разрешает явно указывать тейки и стопы проверьте - пропишите нули в ф-ии открытия ордеров на их местах.
 
gheka:

Мужики, я вас прекрасно понимаю что вас бесит когда задают одни и те же вопросы в этой теме по сто раз,

я бы конечно как начинающий сам бы разобрался,самому ведь интересно все делать

но я всегда и до сих пор в тупике по поводу того что советник тестируется но не пашет на демо и реале.

при тестировании ошибок нет никаких, на демо и реале смайл улыбиться,позиции не открывает

Может быть проблема не в советнике а в ДЦ?

Помогите?


Если открыта хотя бы одна позиция (любая - руками, другим советником) этот советник работать не будет