增加直达接口对LME的支持,调整BasicMonitor的Resize条件

This commit is contained in:
chenxy123 2017-06-01 23:42:59 +08:00
parent 0a504e447b
commit 2100318dd9
6 changed files with 21 additions and 17 deletions

View File

@ -41,6 +41,7 @@ exchangeMap = {}
exchangeMap[EXCHANGE_HKEX] = 'HKEX'
exchangeMap[EXCHANGE_CME] = 'CME'
exchangeMap[EXCHANGE_ICE] = 'ICE'
exchangeMap[EXCHANGE_LME] = 'LME'
exchangeMapReverse = {v:k for k,v in exchangeMap.items()}
# 产品类型映射
@ -283,7 +284,10 @@ class ShzdGatewayApi(ShzdApi):
tick.vtSymbol = '.'.join([tick.symbol, tick.exchange])
tick.volume = int(data['513'])
tick.openInterest = int(data['514'])
# LME行情没有持仓量数据
if data['306'] != 'LME':
tick.openInterest = int(data['514'])
dt = data['512'].split(' ')
tick.time = dt[1]

View File

@ -67,6 +67,7 @@ EXCHANGE_NONE = '' # 空交易所
EXCHANGE_HKEX = 'HKEX' # 港交所
EXCHANGE_HKFE = 'HKFE' # 香港期货交易所
EXCHANGE_SMART = 'SMART' # IB智能路由股票、期权
EXCHANGE_NYMEX = 'NYMEX' # IB 期货
EXCHANGE_GLOBEX = 'GLOBEX' # CME电子交易平台
@ -74,6 +75,7 @@ EXCHANGE_IDEALPRO = 'IDEALPRO' # IB外汇ECN
EXCHANGE_CME = 'CME' # CME交易所
EXCHANGE_ICE = 'ICE' # ICE交易所
EXCHANGE_LME = 'LME' # LME交易所
EXCHANGE_OANDA = 'OANDA' # OANDA外汇做市商
EXCHANGE_OKCOIN = 'OKCOIN' # OKCOIN比特币交易所

View File

@ -74,6 +74,7 @@ EXCHANGE_IDEALPRO = 'IDEALPRO' # IB外汇ECN
EXCHANGE_CME = 'CME' # CME交易所
EXCHANGE_ICE = 'ICE' # ICE交易所
EXCHANGE_LME = 'LME' # LME交易所
EXCHANGE_OANDA = 'OANDA' # OANDA外汇做市商
EXCHANGE_OKCOIN = 'OKCOIN' # OKCOIN比特币交易所

View File

@ -217,6 +217,9 @@ class BasicMonitor(QtWidgets.QTableWidget):
# 监控的事件类型
self.eventType = ''
# 列宽调整状态(只在第一次更新数据时调整一次列宽)
self.columnResized = False
# 字体
self.font = None
@ -345,7 +348,9 @@ class BasicMonitor(QtWidgets.QTableWidget):
self.setItem(0, n, cell)
# 调整列宽
self.resizeColumns()
if not self.columnResized:
self.resizeColumns()
self.columnResized = True
# 重新打开排序
if self.sorting:
@ -677,6 +682,7 @@ class TradingWidget(QtWidgets.QFrame):
EXCHANGE_ICE,
EXCHANGE_CME,
EXCHANGE_NYMEX,
EXCHANGE_LME,
EXCHANGE_GLOBEX,
EXCHANGE_IDEALPRO]

View File

@ -1,5 +1,6 @@
# encoding: UTF-8
import os
import shelve
from collections import OrderedDict
from datetime import datetime
@ -277,6 +278,8 @@ class MainEngine(object):
class DataEngine(object):
"""数据引擎"""
contractFileName = 'ContractData.vt'
path = os.path.abspath(os.path.dirname(__file__))
contractFileName = os.path.join(path, 'temp', contractFileName)
#----------------------------------------------------------------------
def __init__(self, eventEngine):

View File

@ -13,13 +13,9 @@ from vnpy.trader.uiQt import qApp
from vnpy.trader.uiMainWindow import MainWindow
# 加载底层接口
from vnpy.trader.gateway import (ctpGateway, femasGateway, ksotpGateway,
qdpGateway, xspeedGateway,
cshshlpGateway, ltsGateway,
ksgoldGateway, sgitGateway,
oandaGateway, ibGateway, shzdGateway,
huobiGateway, okcoinGateway, lhangGateway,
windGateway)
from vnpy.trader.gateway import (ctpGateway, femasGateway, xspeedGateway,
sgitGateway, oandaGateway, ibGateway,
shzdGateway, huobiGateway, okcoinGateway)
# 加载上层应用
from vnpy.trader.app import (riskManager, dataRecorder,
@ -38,20 +34,13 @@ def main():
# 添加交易接口
me.addGateway(ctpGateway)
me.addGateway(femasGateway)
me.addGateway(ksotpGateway)
me.addGateway(qdpGateway)
me.addGateway(xspeedGateway)
me.addGateway(cshshlpGateway)
me.addGateway(ltsGateway)
me.addGateway(ksgoldGateway)
me.addGateway(sgitGateway)
me.addGateway(oandaGateway)
me.addGateway(ibGateway)
me.addGateway(shzdGateway)
me.addGateway(huobiGateway)
me.addGateway(okcoinGateway)
me.addGateway(lhangGateway)
me.addGateway(windGateway)
# 添加上层应用
me.addApp(riskManager)
@ -66,6 +55,5 @@ def main():
sys.exit(qApp.exec_())
if __name__ == '__main__':
main()