Остановка и ограничения, которые не проходят через IB_INSYNCPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Остановка и ограничения, которые не проходят через IB_INSYNC

Сообщение Anonymous »

Я работаю с бумажной торговой учетной записью, используя интерактивные брокеры TWS Desktop Application и библиотека Python IB_INSYNC. Моя цель состоит в том, чтобы разместить рыночный заказ в gbp.usd с размером позиции 25 тыс., Поместить ограничение прибыли и остановки. Ограничитель получения прибыли и остановка находятся на предопределенной сумме выше/ниже средней цены заполнения. Когда я запускаю код, родительский порядок (в данном случае Long 25K GBP.USD) всегда проходит, но остановка и ограничитель не отображаются в моем приложении для настольного компьютера IB TWS. < /P>
Вот мой код: < /p>
from ib_insync import *

# Create a connection to the IB gateway or TWS
ib = IB()
ib.connect('127.0.0.1', 7497, clientId=1) # adjust these as needed

# Define the contract and order
contract = Forex('GBPUSD')
ib.qualifyContracts(contract)
order = MarketOrder('BUY', 25000)

# Submit the order
trade = ib.placeOrder(contract, order)
print("Order submitted.")
ib.sleep(30)
# Wait for the order to fill
while trade.orderStatus.status != 'Filled':
ib.waitOnUpdate()
print(f"Order status: {trade.orderStatus.status}")

if trade.orderStatus.status == 'Filled':
print("Order filled, placing child orders.")

# Define the prices for the child orders
stop_loss_price = trade.orderStatus.avgFillPrice - 0.00150
profit_target_price = trade.orderStatus.avgFillPrice + 0.00200
print(f"Stop loss price: {stop_loss_price}, Profit target price: {profit_target_price}")
ib.sleep(30)
# If the order is filled, place a stop loss order
stop_loss_order = StopOrder('SELL', 25000, stop_loss_price)
stop_loss_order.orderId = ib.client.getReqId() # get a new order id
stop_loss_trade = ib.placeOrder(contract, stop_loss_order)
ib.sleep(30)
print(f"Stop loss order placed, status: {stop_loss_trade.orderStatus.status}")
ib.sleep(30)
# And place a profit taking order
profit_taking_order = LimitOrder('SELL', 25000, profit_target_price)
profit_taking_order.orderId = ib.client.getReqId() # get a new order id
profit_taking_trade = ib.placeOrder(contract, profit_taking_order)
ib.sleep(30)
print(f"Profit taking order placed, status: {profit_taking_trade.orderStatus.status}")
ib.sleep(30)
ib.disconnect()
#ib.run()

< /code>
Я попытался увеличить задержки и тестировал мой код с 19:00 по восточному поясному времени - 10 вечера в течение будни, чтобы рынок живой, а волатильность не должна быть проблемой. Иногда я заметил, что когда я закрываю свое настольное приложение IB TWS, вновь открою его и повторно запустил свой код все заказы (но не всегда). Опять же, родительский порядок длинных 25 000 Гбпусд всегда проходит, однако, если остановка не проходит, то ограничитель также не проходит. В этом сценарии статус как остановка, так и ограничителя - «pendingsubmit». Я пытался пройти документацию IB_INSYNC и IB API в дополнение к использованию CHATGPT, чтобы попытаться решить проблему, но ни один из этих источников не помог мне.

Подробнее здесь: https://stackoverflow.com/questions/767 ... -ib-insync
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Проблема: тесты проходят в режиме выполнения, но не проходят в режиме отладки с помощью Qt (PySide6 — Python)
    Anonymous » » в форуме Python
    0 Ответы
    31 Просмотры
    Последнее сообщение Anonymous
  • В Ib Insync как отменить тикер? Я не могу получить тикид
    Anonymous » » в форуме Python
    0 Ответы
    13 Просмотры
    Последнее сообщение Anonymous
  • Получение цепочки опций из IB API с использованием ib insync (Python)
    Anonymous » » в форуме Python
    0 Ответы
    25 Просмотры
    Последнее сообщение Anonymous
  • Ограничения проверки Symfony 6 ложно проходят
    Anonymous » » в форуме Php
    0 Ответы
    21 Просмотры
    Последнее сообщение Anonymous
  • Ошибка ограничения памяти PHP на «устаревшем» сайте Wordpress, но я значительно ниже ограничения памяти
    Anonymous » » в форуме Php
    0 Ответы
    25 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»