Скачать MetaTrader 5

не работают перевертыши

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Они уже зарабатывают с помощью сервиса Фриланс. Зарабатывай и ты!
NIkolay2000
624
NIkolay2000 2010.10.07 17:56 

Привет всем. Хочу при закртии шорта сразу открываь лонг, и наоборот, при закртии лонга сразу открывать шорт

Делаю вот так

OrderClose(OrderTicket(),OrderLots(),Bid,3,Violet); // close position

OrderSend(Symbol(),OP_SELL,Lots,Bid,3,Bid-StopLoss*Point,Bid-TakeProfit*Point,"macd sample",mgk,0,Red);

Это закрытие лонга с открытием шорта.

А воти обратная операция

OrderClose(OrderTicket(),OrderLots(),Ask,3,Violet); // close position
OrderSend(Symbol(),OP_BUY,Lots,Ask,3,Ask-StopLoss*Point,Ask+TakeProfit*Point,"macd sample",mgk,0,Green);

Victor Nikolaev
Модератор
14489
Victor Nikolaev 2010.10.07 18:06  
NIkolay2000:

Привет всем. Хочу при закртии шорта сразу открываь лонг, и наоборот, при закртии лонга сразу открывать шорт

Делаю вот так

OrderClose(OrderTicket(),OrderLots(),Bid,3,Violet); // close position

OrderSend(Symbol(),OP_SELL,Lots,Bid,3,Bid-StopLoss*Point,Bid-TakeProfit*Point,"macd sample",mgk,0,Red);

Это закрытие лонга с открытием шорта.

А воти обратная операция

OrderClose(OrderTicket(),OrderLots(),Ask,3,Violet); // close position
OrderSend(Symbol(),OP_BUY,Lots,Ask,3,Ask-StopLoss*Point,Ask+TakeProfit*Point,"macd sample",mgk,0,Green);


А где выбор ордера для работы, то бишь для закрытия
NIkolay2000
624
NIkolay2000 2010.10.07 18:14  
Vinin:

А где выбор ордера для работы, то бишь для закрытия

for(cnt=0;cnt<total;cnt++)
{
OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
if(OrderType()<=OP_SELL && // check for opened position
OrderSymbol()==Symbol()) // check for symbol
{
if(OrderType()==OP_BUY) // long position is opened
{
// should it be closed?
if (z<0)
Взято из стандратного советника macd sample. Позу то он закрывает, а вот противоположную сразу открывать не хочет. Прикрутил механизм для выдачи ошибок если ордер падает.
Victor Nikolaev
Модератор
14489
Victor Nikolaev 2010.10.07 18:16  

Похоже с кусочками не разобраться. Нужен весь код

Петр
6084
Петр 2010.10.07 18:37  

И потом, удобнее открывать сначала встречный ордер с удвоенным лотом, а потом делать перекртытие встречных (в обозримом будущем))). Это будет быстрее и по одной и той же цене (+\- спред, разумеется). Ну, и конечно, ДЦ должен подерживать операцию перекрыть встречные (CkoseBy).

А так - да, выложите весь код скрипта. Не фига так не понять.

NIkolay2000
624
NIkolay2000 2010.10.07 20:26  
Да вроде уже все заработало. Спасибо за помощь.
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий