新手刚上路,最近尝试连接simnow 做仿真交易,虽然能够成功连接上simnow的行情和交易服务器,但是在尝试获取期货合约的tick信息时返回的是“None”, 求大神指路,代码和运行结果如下(用户名和密码隐去了):
from vnpy.app.script_trader import ScriptEngine
from vnpy.app.script_trader import init_cli_trading
from vnpy.gateway.ctp import CtpGateway
from time import sleep
import sys
import importlib
import traceback
from typing import Sequence, Any
from pathlib import Path
from datetime import datetime
from threading import Thread
from pandas import DataFrame
from vnpy.event import Event, EventEngine
from vnpy.trader.engine import BaseEngine, MainEngine
from vnpy.trader.constant import Direction, Offset, OrderType, Interval
from vnpy.trader.object import (
OrderRequest,
HistoryRequest,
SubscribeRequest,
TickData,
OrderData,
TradeData,
PositionData,
AccountData,
ContractData,
LogData,
BarData
)
from vnpy.trader.rqdata import rqdata_client
APP_NAME = "ScriptTrader"
EVENT_SCRIPT_LOG = "eScriptLog"
engine = init_cli_trading([CtpGateway])
setting = {
"用户名": "xxxx",
"密码": "xxxx",
"经纪商代码": "9999",
"交易服务器":"tcp://180.168.146.187:10100",
"行情服务器":"tcp://180.168.146.187:10110",
"产品名称":"simnow_xxx_test",
"授权编码":"0000000000000000",
"产品信息": ""
}
engine.connect_gateway(setting,"CTP")
engine.subscribe(vt_symbols = ["rb2101.SHFE"])
tick=engine.get_tick(vt_symbol="rb2101.SHFE",use_df=True)
print(tick)
运行结果如下: