VeighNa量化社区
你的开源社区量化交易平台
wp61413's Avatar
Member
离线
91 帖子
声望: 0

今仓的数量是position.volume-position.yd_volume吗?即总手数-昨仓手数

我sleep(2)试试,比较奇怪的是,为什么CTP接口没有报错,仅是SOPT报错呢?

我这个不是CTA策略,是自己用脚本写的普通的下单和平仓函数,请问应该如何获取?

从说明文档上看是一样的:

description

但是运行策略时,下的单成功成交了,但是get_trades返回的结果却是[]:

description

所以我怀疑get_trades的入参是不是应该为tradeid?tradeid从哪里获取?

请问如何获得平仓时的成交价?以及下单时的成交价?

print了一下,如图所示,请问account的值为什么是[]?导致了报错。

description

谢谢~

已知get_tick()返回的turnover属性是成交金额,如果想获取成交量(手数),应该取哪个属性?

周末可以进行交易吗?跑跑策略

请问如何可以在周末的时间进行仿真交易(订阅行情、下单、平仓等等交易)?simnow有一个7*24小时的环境,能够连接上但是没有行情推送,无法下单交易,因为希望在周末的时间进行程序调试,如何仿真交易呢?

如何自动重联呢?网络即使恢复了,仍然报这个错误。

我使用:engine.main_engine.get_gateway('SOPT').SoptTdApi.onRspQryTradingAccount()打印时,报错:
AttributeError: 'SoptGateway' object has no attribute 'SoptTdApi'

换成下面的方法调用,
from vnpy_sopt.gateway.sopt_gateway import SoptTdApi
SoptTdApi.onRspQryTradingAccount(SoptGateway)
也报错了:TypeError: SoptTdApi.onRspQryTradingAccount() missing 4 required positional arguments: 'data', 'error', 'reqid', and 'last'

请问应当如何调用onRspQryTradingAccount函数?

sleep 3秒也不行,onRspQryTradingAccount函数在哪里,如何使用呢?放在什么位置?在engine.get_all_accounts()之前还是之后?

-- 这个问题在CTP接口中并不发生,只发生在SOPT接口中。

是服务器的网断开了,还是客户端和服务器连接的网断开了?

使用SOPT接口的时候,调用下面的语句
status = engine.main_engine.get_gateway(interface).td_api.contract_inited
status为True以后,调用get_all_accounts()函数,试了10次,有8次返回结果是[],只有2次正常,可以返回正确的账户信息,结果非常不稳定,请问是什么原因?

description

请问策略运行过程中突然断联是什么原因?

description

策略在服务器上跑着,正常的开盘时间,突然就报这个错误。

今天执行卖出平仓时,报错:交易委托失败,CTP:平昨仓位不足
委托函数为:id1 = engine.sell(vt_symbol=one_pos.symbol + '.' + one_pos.exchange.value, price=buy_price1, volume=one_Amount, order_type=OrderType.LIMIT)

description

请问如果想平今仓,委托函数怎么写?

可以帮助回答吗?这样写,是不是就可以启动风控了?

from vnpy_riskmanager import RiskManagerApp
from vnpy_ctp import CtpGateway
from vnpy_scripttrader import init_cli_trading
engine = init_cli_trading([CtpGateway])
engine.main_engine.add_app(RiskManagerApp)

a = engine.main_engine.get_engine('RiskManager')

setting = {}
setting["active"] = True
setting["order_flow_limit"] = 10
setting["order_flow_clear"] = 100
setting["order_size_limit"] = 10
setting["trade_limit"] = 100
setting["active_order_limit"] = 10
setting["order_cancel_limit"] = 10
a.update_setting(setting)
a.save_setting()

可以了,非常感谢

© 2015-2022 微信 18391752892
备案服务号:沪ICP备18006526号

沪公网安备 31011502017034号

【用户协议】
【隐私政策】
【免责条款】