def test_orders(): """下单接口测试""" import json from bitmex.bitmexAccountSettings import bitmexAccountSettings acc = bitmexAccountSettings() acc.from_config_file('bitmex/BITMEX_connect.json') bm = bitmexREST(acc.apiKey, acc.apiSecret, acc.isTestNet) res = bm.get_positions() if res.ok: print(res.json()[0]['symbol'], res.json()[0]['currentQty']) res = bm.get_open_orders() if res.ok: print(res.json()) res = bm.place_order(symbol='XBTUSD', side='Sell', qty=100, limit_price=None) if res.ok: print(res.json()) res = bm.place_order(symbol='XBTUSD', side='Buy', qty=120, limit_price=6365.0) if res.ok: print(res.json())
def test_query_execution(): """查询交易相关数据测试""" import json import pandas as pd from bitmex.bitmexAccountSettings import bitmexAccountSettings acc = bitmexAccountSettings() acc.from_config_file('bitmex/BITMEX_connect.json') bm = bitmexREST(acc.apiKey, acc.apiSecret, acc.isTestNet) result = bm.query_history_execution('XBTUSD', '2018-10-27 00:00:00', '2018-10-27 24:00:00') df = pd.DataFrame(result) print(df)
else: self.logger.info('❌ ❌ ❌ Placeing Order Failed:\n%s' % res.json()) def test(self): """单元测试 发单测试:单开一个线程,不断push TARGET_POSITION_EVENT,主动调用 on_target_position_event() 延迟测试:收集4个时间戳,分析各种下单延迟 :return: """ pass if __name__ == '__main__': import time from bitmex.bitmexAccountSettings import bitmexAccountSettings from ctaEngine import GlobalSettings g = GlobalSettings() g.from_config_file('./global_settings.json') bitmex_account_settings = bitmexAccountSettings() bitmex_account_settings.from_config_file('bitmex/BITMEX_connect.json', which="account_test") oms = bitmexTargetPositionExecutor(g, bitmex_account_settings, ['XBTUSD']) oms.test()