OrderSend(Symbol(),OP_SELLSTOP,1,price,0,0,0) --- OrderSend error 130

 

double price=200;

OrderSend(Symbol(),OP_SELLSTOP,1,price,0,0,0) --- OrderSend error 130 --- В тестере, какая тут вообще проблема со стопами??? они вообще= 0???

 
ineteye:

double price=200;

OrderSend(Symbol(),OP_SELLSTOP,1,price,0,0,0) --- OrderSend error 130 --- В тестере, какая тут вообще проблема со стопами??? они вообще= 0???

Неправильную цену даёте.
 

Хорошо :

double price = 200.50; --- Так правильно????

OrderSend(Symbol(),OP_SELLSTOP,1,price,0,0,0);

 
99,9% Вы пытаетесь ставить ордер не на место (СеллСтоп выше цены), или меняйте тип ордера, или уменьшайте цену (ниже Бида)
 
из примера видно, что TakeProfit и SellStop вообще =0!!! Я просто хочу отправить отложенную заявку с покупкой если заданная цена будет достигнута
 
ineteye:
из примера видно, что TakeProfit и SellStop вообще =0!!!


А при чем тут стопы. Речь идет только о ценах

Есть ордера типа OP_SELLSTOP и OP_SELLLIMIT. Цены для них должны быть разные. Для одних случаев меньше текущей цены, в других больше

 

Типы ордеров

Клиентский терминал позволяет подготавливать и выдавать приказы брокеру на исполнение торговых операций. Кроме того, терминал позволяет контролировать и управлять состоянием открытых позиций. Для этих целей используются несколько видов торговых ордеров. Ордером называется распоряжение или приказание клиента брокерской компании провести какую-либо торговую операцию. В терминале используются следующие ордера: Рыночный ордер, Отложенный ордер, Стоп Лосс и Тейк Профит.

  • Рыночный ордер
    Рыночный ордер — это распоряжение брокерской компании купить или продать финансовый инструмент по текущей цене. Исполнение данного ордера приводит к открытию торговой позиции. Покупка происходит по цене Ask (цена спроса), а продажа — по Bid (цена предложения). К рыночному ордеру можно прикрепить ордера Стоп Лосс и Тейк Профит (эти ордера описаны ниже). Режим исполнения рыночных ордеров зависит от финансового инструмента.

  • Отложенный ордер
    Отложенный ордер — это распоряжение брокерской компании купить или продать финансовый инструмент в будущем по заданной цене. Данный ордер используется для открытия торговой позиции при условии равенства будущих котировок установленному уровню. Существует четыре типа отложенных ордеров:

    1. Buy Limit — купить при равенстве будущей цены "Ask" установленному значению. При этом текущий уровень цен больше значения установленного ордера. Обычно ордера этого типа выставляются в расчете на то, что цена инструмента, опустившись до определенного уровня, начнет расти;

    2. Buy Stop — купить при равенстве будущей цены "Ask" установленному значению. При этом текущий уровень цен меньше значения установленного ордера. Обычно ордера этого типа выставляются в расчете на то, что цена инструмента преодолеет некий уровень и продолжит свой рост;

    3. Sell Limit — продать при равенстве будущей цены "Bid" установленному значению. При этом текущий уровень цен меньше значения установленного ордера. Обычно ордера этого типа выставляются в расчете на то, что цена инструмента, поднявшись до определенного уровня, начнет снижаться;

    4. Sell Stop — продать при равенстве будущей цены "Bid" установленному значению. При этом текущий уровень цен больше значения установленного ордера. Обычно ордера этого типа выставляются в расчете на то, что цена инструмента достигнет определенного уровня и продолжит снижаться.


 
ineteye:
из примера видно, что TakeProfit и SellStop вообще =0!!! Я просто хочу отправить отложенную заявку с покупкой если заданная цена будет достигнута

У Вас ордер SELLSTOP, в вызове OrderSend() цена price должна быть ниже текущей цены Bid на величину (в пунктах) не менее, чем установленный Вашим ДЦ уровень STOPLEVEL
 
Итак если я хочу отложенный ордер... в том случае если цена .. к примеру будет = 200.5, а сейчас она 189 ... и при этой цене провести продажу????
 
ineteye:
Итак если я хочу отложенный ордер... в том случае если цена .. к примеру будет = 200.5, а сейчас она 189 ... и при этой цене провести продажу????

Если сейчас цена 100, а вы хотите продать по цене 200, то вам необходимо использовать SELLLIMIT ордер

Если сейчас цена 300, а вы хотите продать по цене 200, то вам необходимо использовать SELLSTOP ордер

 

Хорошо сейчас цена 100, хочу продать по 200,тогда

OrderSend(Symbol(),OP_ SELLLIMIT,1,200,0,0,0);

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