Hi,
I am trying to place a braket order from fyers api v3,
but getting error:
My code:
def place_bo_order(symbol,buy_or_sell_type,qty,order_type,stop_loss,take_profit):
data = {
"symbol":symbol,
"qty":qty,
"type":order_type, # limit 1 market 2
"side":buy_or_sell_type, # buy 1, sell -1
"productType":"BO", # BO
"limitPrice":0, # Provide valid price for Limit and Stoplimit orders
"stopPrice":0, # Provide valid price for Stop and Stoplimit orders
"validity":"DAY",
"disclosedQty":0,
"offlineOrder":False, # False => When market is open
"stopLoss":stop_loss, # Provide valid price for CO and BO orders
"takeProfit":take_profit, # Provide valid price for CO and BO orders
"orderTag":"venkataapi"
}
response = fyers.place_order(data)
return response
# NSE:EICHERMOT-EQ NSE:EICHERMOT-EQ NSE:LTIM-EQ NSE:M&M-EQ NSE:SUNPHARMA-EQ NSE:BAJAJ-AUTO-EQ NSE:APOLLOHOSP-EQ NSE:HEROMOTOCO-EQ NSE:RELIANCE-EQ NSE:TCS-EQ NSE:INDUSINDBK-EQ
# This places a HDFCBANK BUY Bracket martket order of 1 share with rupees 5 as stop loss and 10 rupees as target
response = place_bo_order("NSE:APOLLOHOSP-EQ",1,1,2,5,10)
print(json.dumps(response, indent =4))
My Error Response:
{
"code": -50,
"message": "productType must be one of the following: \"CNC\", \"MARGIN\", \"INTRADAY\"",
"s": "error"
}