Skip to content

Commit

Permalink
Merge pull request vnpy#1262 from nanoric/fix_okex
Browse files Browse the repository at this point in the history
Fix okex
  • Loading branch information
vnpy authored Nov 26, 2018
2 parents c3cb62d + fc7eb66 commit 9c79ab2
Show file tree
Hide file tree
Showing 2 changed files with 29 additions and 23 deletions.
9 changes: 7 additions & 2 deletions vnpy/api/websocket/WebsocketClient.py
Original file line number Diff line number Diff line change
Expand Up @@ -263,11 +263,16 @@ def _recordLastSentText(self, text):
"""
用于Debug: 记录最后一次发送出去的text
"""
self._lastSentText = text[:500]
self._lastSentText = text[:1000]

#----------------------------------------------------------------------
def _recordLastReceivedText(self, text):
"""
用于Debug: 记录最后一次发送出去的text
"""
self._lastReceivedText = text[:500]
try:
# 尝试解包,解不了就算
text = str(self.unpackData(text))
except:
pass
self._lastReceivedText = text[:1000]
43 changes: 22 additions & 21 deletions vnpy/trader/gateway/okexfGateway/okexfGateway.py
Original file line number Diff line number Diff line change
Expand Up @@ -388,27 +388,28 @@ def onQueryAccount(self, data, request):
#----------------------------------------------------------------------
def onQueryPosition(self, data, request):
""""""
for d in data['holding'][0]:
longPosition = VtPositionData()
longPosition.gatewayName = self.gatewayName
longPosition.symbol = d['instrument_id']
longPosition.exchange = 'OKEX'
longPosition.vtSymbol = '.'.join([longPosition.symbol, longPosition.exchange])
longPosition.direction = DIRECTION_LONG
longPosition.vtPositionName = '.'.join([longPosition.vtSymbol, longPosition.direction])
longPosition.position = int(d['long_qty'])
longPosition.frozen = longPosition.position - int(d['long_avail_qty'])
longPosition.price = float(d['long_avg_cost'])

shortPosition = copy(longPosition)
shortPosition.direction = DIRECTION_SHORT
shortPosition.vtPositionName = '.'.join([shortPosition.vtSymbol, shortPosition.direction])
shortPosition.position = int(d['short_qty'])
shortPosition.frozen = shortPosition.position - int(d['short_avail_qty'])
shortPosition.price = float(d['short_avg_cost'])

self.gateway.onPosition(longPosition)
self.gateway.onPosition(shortPosition)
for holding in data['holding']:
for d in holding:
longPosition = VtPositionData()
longPosition.gatewayName = self.gatewayName
longPosition.symbol = d['instrument_id']
longPosition.exchange = 'OKEX'
longPosition.vtSymbol = '.'.join([longPosition.symbol, longPosition.exchange])
longPosition.direction = DIRECTION_LONG
longPosition.vtPositionName = '.'.join([longPosition.vtSymbol, longPosition.direction])
longPosition.position = int(d['long_qty'])
longPosition.frozen = longPosition.position - int(d['long_avail_qty'])
longPosition.price = float(d['long_avg_cost'])

shortPosition = copy(longPosition)
shortPosition.direction = DIRECTION_SHORT
shortPosition.vtPositionName = '.'.join([shortPosition.vtSymbol, shortPosition.direction])
shortPosition.position = int(d['short_qty'])
shortPosition.frozen = shortPosition.position - int(d['short_avail_qty'])
shortPosition.price = float(d['short_avg_cost'])

self.gateway.onPosition(longPosition)
self.gateway.onPosition(shortPosition)

#----------------------------------------------------------------------
def onQueryOrder(self, data, request):
Expand Down

0 comments on commit 9c79ab2

Please sign in to comment.