简体   繁体   English

如何使用 python-binance 下达带有止盈和止损的期货市场订单

[英]How to place a Futures Market order with Take Profit and Stop Loss using python-binance

I'm struggling to place Take Profit and Stop Loss orders using python-binance and can't understand how to set up TP & SL % For now I only found how to place base orders like:我正在努力使用 python-binance 下止盈和止损订单,并且无法理解如何设置 TP & SL % 目前我只找到了如何下基本订单,例如:

Market order市价单

from binance_f import RequestClient
from binance_f.constant.test import *
from binance_f.base.printobject import *
from binance_f.model.constant import *

client = RequestClient(api_key='api_key',
                       secret_key='secret_key',
                       url='https://testnet.binancefuture.com')

print(client.post_order(symbol="BTCUSDT", ordertype="MARKET", side="SELL",
                        positionSide="BOTH", quantity=0.001))

Limit order限价单

from binance_f import RequestClient
from binance_f.constant.test import *
from binance_f.base.printobject import *
from binance_f.model.constant import *

client = RequestClient(api_key='api_key',
                       secret_key='secret_key',
                       url='https://testnet.binancefuture.com')

print(client.post_order(symbol="BTCUSDT", ordertype="LIMIT", side="BUY",
                        positionSide="BOTH", quantity=0.01, timeInForce="GTC",
                        price=48680))
from binance.client import Client
from binance.helpers import round_step_size

api_key = ''
api_secret = ''
client = Client(api_key, api_secret)
symbol = 'KNCUSDT'


def get_account_balance():
    balance = client.futures_account_balance()[6]['balance']
    return float(balance)


def get_min_quant(symbol):
    info = client.futures_exchange_info()
    for item in info['symbols']:
        if item['symbol'] == symbol:
            for f in item['filters']:
                if f['filterType'] == 'PRICE_FILTER':
                    return f['tickSize']



bet = 13  # the percentage of the balance I am willing to buy with
balance = get_account_balance() * bet / 100

tick_size = float(get_min_quant(symbol))
print(tick_size)

symbol_info = client.get_ticker(symbol=symbol)
symbol_price = float(symbol_info['lastPrice'])
quantity = int(balance / symbol_price)

enter_long_coeff = 0.4
take_profit_percent = 0.2
stop_loss_percent = 0.2

price_long_enter = symbol_price * (1 - enter_long_coeff / 100)  # entry price for a limit order
price_long_enter = round_step_size(price_long_enter, tick_size)

take_profit_price = price_long_enter * (1 + take_profit_percent / 100)
take_profit_price = round_step_size(take_profit_price, tick_size)

stop_loss_price = price_long_enter * (1 + take_profit_percent / 100)
stop_loss_price = round_step_size(stop_loss_price, tick_size)

print(price_long_enter)
print(stop_loss_price)
print(take_profit_price)
print('=======')

limit_order_long = client.futures_create_order(
    symbol=symbol,
    side='BUY',
    positionSide='LONG',
    type='LIMIT',
    quantity=quantity,
    timeInForce='GTC',
    price=price_long_enter
)

sell_gain_market_long = client.futures_create_order(
    symbol=symbol,
    side='SELL',
    type='TAKE_PROFIT_MARKET',
    positionSide='LONG',
    quantity=quantity,
    stopPrice=take_profit_price
)

sell_stop_market_short = client.futures_create_order(
    symbol=symbol,
    side='SELL',
    type='STOP_MARKET',
    positionSide='LONG',
    quantity=quantity,
    stopPrice=stop_loss_price
)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 如何在 Binance API Python 上设置止盈止损的市场期货订单? - How to place a market futures order with take profit and stop loss on Binance API Python? 如何使用 python-binance 下期货市场订单:APIError(code=-1111): Precision is over the maximum defined for this assets - How to place a futures market order using python-binance: APIError(code=-1111): Precision is over the maximum defined for this asset Python 币安期货止盈止损订单 API 错误 2021 订单将立即触发 - Python Binance Futures Take Profit and Stop Loss order API Error 2021 Order would immediately trigger python-binance 中的止损限价单 API - Stop Limit Order in python-binance API Python-币安期货用户数据websocket - Python-binance futures user data websocket Python Binance Futures - 创建止盈限价订单时出现问题 ->(APIError(代码=-2021):订单会立即触发。) - Python Binance Futures - problem creating Take Profit Limit order -> (APIError(code=-2021): Order would immediately trigger.) 使用 python-binance 包装器放置 Binance 未来订单。 错误:APIError(代码=-1102):未发送强制参数“5e-05” - Place Binance Future Order using python-binance wrapper. Error: APIError(code=-1102): Mandatory parameter '5e-05' was not sent 如何使用 python-binance 获取订单的 orderId? - How do i get the orderId of an order with python-binance? Python-binance api Twap 订单 - Python-binance api Twap order 如何在 python 中使用 ccxt 制作币安期货订单? - How to make a binance futures order with ccxt in python?
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM