Простой советник.

 

Привет.

Напишите пожалуйста советник, чтобы тот покупал на пробитии high предыдущей свечи, а продавал на пробитии low предыдущей свечи.

TP и SL 15 пунктов.

 
extern int       tp=15;
extern int       sl=15;

int init()
{
   return(0);
}
int deinit()
{
   return(0);
}
int start()
{
     
   if(OrdersTotal()>0)  return(0);

     if(Bid>High[1])
          OrderSend(Symbol(),OP_BUY, 0.1, Ask, 0, Ask-sl*Point, Ask+tp*Point );  
     if(Bid<Low[1])    
          OrderSend(Symbol(),OP_SELL, 0.1, Bid, 0, Bid+sl*Point, Bid-tp*Point );     
}
 
denis_orlov >>:

Огромное спасибо, только выходит ошибка 130. Как ее исправить?

 
Baltimor писал(а) >>

Огромное спасибо, только выходит ошибка 130. Как ее исправить?


ERR_INVALID_STOPS 130 Слишком близкие стопы или неправильно рассчитанные или ненормализованные цены в стопах (или в цене открытия отложенного ордера). Попытку можно повторять только в том случае, если ошибка произошла из-за устаревания цены. Необходимо после задержки от 5 секунд обновить данные при помощи функции RefreshRates и повторить попытку. Если ошибка не исчезает, необходимо прекратить все попытки торговых операций и изменить логику программы.
 
Baltimor >>:

Огромное спасибо, только выходит ошибка 130. Как ее исправить?

ИМХО, Денису надо в OrderSend Bid и Ask поправить.
 
granit77 писал(а) >>
ИМХО, Денису надо в OrderSend Bid и Ask поправить.

Да и контроль на стоплевел не помешал бы
 
Vinin >>:

Да и контроль на стоплевел не помешал бы

Тут много чего не помешало бы...))

В первую очередь продумать стратегию.)

у меня в тестере работает, может у человека 5-знак и следует 0 добавить

extern int       tp=150;
extern int       sl=150;

___

А что насчет Bid и Ask? разве не от цены сделки следует вычислять размер профита и стопа?

 

А если у брокера market-исполнение, то выставить S/L и T/P одновременно с ордером и вообще не получится :)

 
Diamant >>:

А если у брокера market-исполнение, то выставить S/L и T/P одновременно с ордером и вообще не получится :)

и не нужно, эта сливная игрушка - чисто для тестера
 
denis_orlov писал(а) >>

А что насчет Bid и Ask? разве не от цены сделки следует вычислять размер профита и стопа?


Открываем по Ask, закрываем по Bid. И наоборот. Стопы и тейки надо считать от цены закрытия
 
Vinin >>:

Открываем по Ask, закрываем по Bid. И наоборот. Стопы и тейки надо считать от цены закрытия

так... вспоминаем основы...

Покупку открываем по Ask, закрываем по Bid -- верно

но, для достижения профита Х пп, цена Bid должна достигнуть чего? верно - цены открытия Ask+Xпп,

если вычислять профит и стоп от Bid, между ними будет разница равная удвоенному спреду

Вот скажем Bid 1798 Ask 1800


TP и SL 15 пунктов.

покупаем по Ask 1800, стоп=1800-15=1785, профит=1800+15=1815

TP = SL= 15 пунктов - в чем проблема?

в учебнике, правда иначе, почему-то не от цены сделки:

стоп=1798-15=1783, профит=1798+15=1813

профит 13, стоп 17, разница 4пп

Причина обращения: