75 lines
2.3 KiB
Python
75 lines
2.3 KiB
Python
# coding:utf-8
|
|
from mimetypes import init
|
|
import sys
|
|
sys.stdout.reconfigure(encoding='utf-8') # 设置标准输出编码为UTF-8 # type: ignore
|
|
from core.main_controller import SFGridController
|
|
import core.util as util
|
|
import sfgrid_constants as sdConstants
|
|
from xtquant import xtdata
|
|
import ui
|
|
|
|
def interact():
|
|
"""执行后进入repl模式"""
|
|
import code
|
|
code.InteractiveConsole(locals=globals()).interact()
|
|
|
|
def startMarketData():
|
|
ctrl.startMarketData()
|
|
|
|
def stopMarketData():
|
|
ctrl.stopMarketData()
|
|
|
|
def pool():
|
|
ctrl.print_pool()
|
|
|
|
def addTarget(stock_code):
|
|
ctrl.add_trade_target(stock_code)
|
|
|
|
def delTarget(index:int):
|
|
ctrl.del_trade_target(index)
|
|
|
|
def accountInfo():
|
|
ctrl.print_account_info()
|
|
|
|
def positionInfo():
|
|
ctrl.print_position_info()
|
|
|
|
def startTrade(index:int):
|
|
ctrl.start_stock_trade(index)
|
|
|
|
def pauseTrade(index:int):
|
|
ctrl.pause_stock_trade(index)
|
|
|
|
def stockTradeCtrl(index: int):
|
|
return ctrl.stock_trade_ctrl[ctrl.instrument_pool[index].stock_code]
|
|
|
|
|
|
def help():
|
|
print("基础指令:")
|
|
print(" ===================================================")
|
|
print(" startMarketData() - 启动市场数据接收")
|
|
print(" stopMarketData() - 停止市场数据接收\n")
|
|
print(" pool() - 打印标的池信息")
|
|
print(" addTarget(stock_code) - 添加交易标的")
|
|
print(" delTarget(index) - 删除交易标的\n")
|
|
print(" accountInfo() - 打印账户信息")
|
|
print(" positionInfo() - 打印持仓信息\n")
|
|
print(" startTrade(index) - 启动标的交易")
|
|
print(" pauseTrade(index) - 暂停标的交易")
|
|
print(" ===================================================")
|
|
print("内部指令:")
|
|
print(" stockTradeCtrl(index) - 获取标的交易控制器")
|
|
print(" ctrl - 访问控制器实例")
|
|
|
|
if __name__ == '__main__':
|
|
# app = ui.ProfessionalTradeUI(trade_targets=ctrl.instrument_pool)
|
|
# app.run()
|
|
|
|
sdConstants.initConfig()
|
|
print(f'{sdConstants.account_no} : {sdConstants.miniQMTPath}')
|
|
ctrl: SFGridController = SFGridController(sdConstants.account_no, sdConstants.miniQMTPath)
|
|
if ctrl.inited:
|
|
interact()
|
|
else:
|
|
print("控制器初始化失败")
|