def main(): """""" qapp = create_qapp() event_engine = EventEngine() main_engine = MainEngine(event_engine) # main_engine.add_gateway(BinanceGateway) # main_engine.add_gateway(CtpGateway) # main_engine.add_gateway(CtptestGateway) # main_engine.add_gateway(MiniGateway) # main_engine.add_gateway(SoptGateway) # main_engine.add_gateway(MinitestGateway) # main_engine.add_gateway(FemasGateway) main_engine.add_gateway(UftGateway) # main_engine.add_gateway(IbGateway) # main_engine.add_gateway(FutuGateway) # main_engine.add_gateway(BitmexGateway) # main_engine.add_gateway(TigerGateway) # main_engine.add_gateway(OesGateway) # main_engine.add_gateway(OkexGateway) # main_engine.add_gateway(HuobiGateway) # main_engine.add_gateway(BitfinexGateway) # main_engine.add_gateway(OnetokenGateway) # main_engine.add_gateway(OkexfGateway) # main_engine.add_gateway(HbdmGateway) main_engine.add_gateway(XtpGateway) # main_engine.add_gateway(TapGateway) # main_engine.add_gateway(ToraGateway) # main_engine.add_gateway(AlpacaGateway) # main_engine.add_gateway(OkexsGateway) # main_engine.add_gateway(DaGateway) # main_engine.add_gateway(CoinbaseGateway) # main_engine.add_gateway(BitstampGateway) # main_engine.add_gateway(GateiosGateway) # main_engine.add_gateway(BybitGateway) # main_engine.add_gateway(DeribitGateway) # main_engine.add_gateway(OkexoGateway) # main_engine.add_gateway(BinancefGateway) # main_engine.add_app(CtaStrategyApp) # main_engine.add_app(CtaBacktesterApp) # main_engine.add_app(CsvLoaderApp) # main_engine.add_app(AlgoTradingApp) # main_engine.add_app(DataRecorderApp) # main_engine.add_app(RiskManagerApp) # main_engine.add_app(ScriptTraderApp) # main_engine.add_app(RpcServiceApp) # main_engine.add_app(SpreadTradingApp) # main_engine.add_app(PortfolioManagerApp) # main_engine.add_app(OptionMasterApp) # main_engine.add_app(ChartWizardApp) # main_engine.add_app(ExcelRtdApp) main_engine.add_app(DataManagerApp) main_window = MainWindow(main_engine, event_engine) main_window.showMaximized() qapp.exec()
def main(): """""" qapp = create_qapp() event_engine = EventEngine() main_engine = MainEngine(event_engine) main_engine.add_gateway(BinanceGateway) main_engine.add_gateway(BitmexGateway) main_engine.add_gateway(OkexGateway) main_engine.add_gateway(HuobiGateway) main_engine.add_gateway(BitfinexGateway) main_engine.add_gateway(OnetokenGateway) main_engine.add_gateway(OkexfGateway) main_engine.add_gateway(HbdmGateway) main_engine.add_app(CtaStrategyApp) main_engine.add_app(CtaBacktesterApp) main_engine.add_app(CsvLoaderApp) # main_engine.add_app(AlgoTradingApp) # main_engine.add_app(DataRecorderApp) main_engine.add_app(RiskManagerApp) # main_engine.add_app(ScriptTraderApp) # main_engine.add_app(RpcServiceApp) main_window = MainWindow(main_engine, event_engine) main_window.showMaximized() qapp.exec()
def main(): """""" qapp = create_qapp() event_engine = EventEngine() main_engine = MainEngine(event_engine) main_engine.add_gateway(CtpGateway) main_engine.add_gateway(IbGateway) main_engine.add_gateway(FutuGateway) main_engine.add_gateway(BitmexGateway) main_engine.add_gateway(TigerGateway) main_engine.add_gateway(OesGateway) main_engine.add_gateway(OkexGateway) main_engine.add_gateway(HuobiGateway) main_engine.add_gateway(BitfinexGateway) main_engine.add_gateway(OnetokenGateway) main_engine.add_app(CtaStrategyApp) main_engine.add_app(CtaBacktesterApp) main_engine.add_app(CsvLoaderApp) main_engine.add_app(AlgoTradingApp) main_window = MainWindow(main_engine, event_engine) main_window.showMaximized() qapp.exec()
def main(): """""" qapp = create_qapp() event_engine = EventEngine() main_engine = MainEngine(event_engine) engine_name = 'BINANCES' main_engine.add_gateway(BinancesGateway) setting = { "key": "bEZCKVAkJYugYErdlg5GAj7PGgh72ieFIVtDVYgUwJuE7M0vLFM7lN7JuQPYB0AL", "secret": "LGZXmPUe4iXqOWlmjiUHGvf7XsdLSBWe5HfXauJoxu8qR9RTeZMUqzTOhcRiAK9K", "会话数": 3, "服务器": ["REAL"], "合约模式": "正向", "代理地址": "", "代理端口": 0 } main_engine.connect(setting, engine_name) main_window = MainWindow(main_engine, event_engine) main_window.showMaximized() main_engine.write_log("主引擎创建成功") qapp.exec() pass
def main(): """Start VN Trader""" qapp = create_qapp() event_engine = EventEngine() main_engine = MainEngine(event_engine) main_engine.add_gateway(BinanceGateway) main_engine.add_gateway(HuobiGateway) main_engine.add_gateway(HuobifGateway) main_engine.add_gateway(BinancesGateway) main_engine.add_gateway(BitmexGateway) main_engine.add_gateway(OkexGateway) main_engine.add_gateway(BitstampGateway) main_engine.add_app(ExcelRtdApp) main_engine.add_app(DataRecorderApp) main_engine.add_app(DataManagerApp) main_engine.add_app(CtaBacktesterApp) main_engine.add_app(SpreadTradingApp) main_engine.add_app(CtaStrategyApp) main_window = MainWindow(main_engine, event_engine) main_window.showMaximized() qapp.exec()
def main(): """""" qapp = create_qapp() event_engine = EventEngine() main_engine = MainEngine(event_engine) main_engine.add_gateway(CtpGateway) # main_engine.add_gateway(CtptestGateway) # main_engine.add_gateway(MiniGateway) # main_engine.add_gateway(MinitestGateway) # main_engine.add_gateway(FemasGateway) # main_engine.add_gateway(SoptGateway) # main_engine.add_gateway(SopttestGateway) # main_engine.add_gateway(SecGateway) # main_engine.add_gateway(UftGateway) # main_engine.add_gateway(EsunnyGateway) # main_engine.add_gateway(HsoptionGateway) # main_engine.add_gateway(XtpGateway) # main_engine.add_gateway(ToraStockGateway) # main_engine.add_gateway(ToraOptionGateway) # main_engine.add_gateway(OesGateway) # main_engine.add_gateway(ComstarGateway) # main_engine.add_gateway(IbGateway) # main_engine.add_gateway(TapGateway) # main_engine.add_gateway(DaGateway) # main_engine.add_gateway(RohonGateway) # main_engine.add_gateway(TtsGateway) # main_engine.add_gateway(SgitGateway) # main_engine.add_gateway(KsgoldGateway) # main_engine.add_gateway(OstGateway) # main_engine.add_gateway(GtjaGateway) # main_engine.add_gateway(NhFuturesGateway) # main_engine.add_gateway(NhStockGateway) # main_engine.add_gateway(FutuGateway) # main_engine.add_app(CtaStrategyApp) # main_engine.add_app(CtaBacktesterApp) # main_engine.add_app(SpreadTradingApp) # main_engine.add_app(AlgoTradingApp) # main_engine.add_app(OptionMasterApp) # main_engine.add_app(PortfolioStrategyApp) # main_engine.add_app(ScriptTraderApp) # main_engine.add_app(ChartWizardApp) # main_engine.add_app(RpcServiceApp) # main_engine.add_app(ExcelRtdApp) # main_engine.add_app(DataManagerApp) # main_engine.add_app(DataRecorderApp) # main_engine.add_app(RiskManagerApp) # main_engine.add_app(WebTraderApp) # main_engine.add_app(PortfolioManagerApp) # main_engine.add_app(PaperAccountApp) main_window = MainWindow(main_engine, event_engine) main_window.showMaximized() qapp.exec()
def main(): """""" qapp = create_qapp() event_engine = EventEngine() main_engine = MainEngine(event_engine) log_engine = main_engine.get_engine("log") event_engine.register(EVENT_FOLLOW_LOG, log_engine.process_log_event) main_engine.write_log("注册日志事件监听") # main_engine.add_gateway(BinanceGateway) main_engine.add_gateway(CtpGateway) # main_engine.add_gateway(CtptestGateway) # main_engine.add_gateway(MiniGateway) # main_engine.add_gateway(SoptGateway) # main_engine.add_gateway(MinitestGateway) # main_engine.add_gateway(FemasGateway) # main_engine.add_gateway(IbGateway) # main_engine.add_gateway(FutuGateway) # main_engine.add_gateway(BitmexGateway) # main_engine.add_gateway(TigerGateway) # main_engine.add_gateway(OesGateway) # main_engine.add_gateway(OkexGateway) # main_engine.add_gateway(HuobiGateway) # main_engine.add_gateway(BitfinexGateway) # main_engine.add_gateway(OnetokenGateway) # main_engine.add_gateway(OkexfGateway) # main_engine.add_gateway(HbdmGateway) # main_engine.add_gateway(XtpGateway) # main_engine.add_gateway(TapGateway) # main_engine.add_gateway(ToraGateway) # main_engine.add_gateway(AlpacaGateway) # main_engine.add_gateway(OkexsGateway) # main_engine.add_gateway(DaGateway) # main_engine.add_gateway(CoinbaseGateway) # main_engine.add_gateway(RpcGateway) main_engine.add_gateway(TqdataGateway) main_engine.add_app(CtaStrategyApp) # main_engine.add_app(CtaBacktesterApp) # main_engine.add_app(CsvLoaderApp) # main_engine.add_app(AlgoTradingApp) # main_engine.add_app(DataRecorderApp) # main_engine.add_app(RiskManagerApp) # main_engine.add_app(ScriptTraderApp) # main_engine.add_app(RpcServiceApp) # main_engine.add_app(SpreadTradingApp) # main_engine.add_app(FollowTradingApp) main_window = MainWindow(main_engine, event_engine) main_window.showMaximized() qapp.exec()
def main(): """""" qapp = create_qapp() event_engine = EventEngine() main_engine = MainEngine(event_engine) main_engine.add_gateway(BinancesGateway) engine_name = 'BINANCES' setting = { "key": "bEZCKVAkJYugYErdlg5GAj7PGgh72ieFIVtDVYgUwJuE7M0vLFM7lN7JuQPYB0AL", "secret": "LGZXmPUe4iXqOWlmjiUHGvf7XsdLSBWe5HfXauJoxu8qR9RTeZMUqzTOhcRiAK9K", "会话数": 3, "服务器": "REAL", "合约模式": "正向", "代理地址": "", "代理端口": 0 } main_engine.connect(setting, engine_name) yearlists = {'2020': '2021'} # all existed currency futures symbols = SYMBOLS # symbol = symbols[0] # quote = SubscribeRequest(symbol, BinanceGateway.exchanges[0]) # df = main_engine.subscribe(quote,'BINANCE') INTERV = 'MINUTE' # INTERV = 'YEAR' for symbol in symbols: this_directory = 'C:\\Workspace\\crypto\\data\\' + symbol if not os.path.exists(this_directory): os.makedirs(this_directory) for key, var in yearlists.items(): startdate = pd.to_datetime(key + '-01-01') enddate = pd.to_datetime(var + '-01-06') print('query {} minute history '.format(symbol)) quote = HistoryRequest(symbol, BinancesGateway.exchanges[0], start=startdate, end=enddate, interval=Interval.MINUTE) df = main_engine.query_history(quote, engine_name) # HOUR this_model_file = this_directory + '\\' + symbol + '_FUTURES' + '_' + INTERV + '_' + key + '.pkl' # MINUTE # this_model_file = this_directory + '\\' + symbol + '_' + INTERV + '_all' + '.pkl' with open(this_model_file, 'wb') as f: # first save model pickle.dump(df, f)
def main(): """Start VN Trader""" qapp = create_qapp() event_engine = EventEngine() main_engine = MainEngine(event_engine) main_engine.add_gateway(TradeAgentGateway) main_window = MainWindow(main_engine, event_engine) main_window.showMaximized() qapp.exec()
def main(): """主入口函数""" qapp = create_qapp() event_engine = EventEngine() main_engine = MainEngine(event_engine) main_engine.add_gateway(DeribitGateway) main_window = MainWindow(main_engine, event_engine) main_window.showMaximized() qapp.exec()
def main(): """Start VN Trader""" qapp = create_qapp() event_engine = EventEngine() main_engine = MainEngine(event_engine) main_engine.add_gateway(CtpGateway) main_engine.add_app(CtaStrategyApp) main_engine.add_app(CtaBacktesterApp) main_window = MainWindow(main_engine, event_engine) main_window.showMaximized() qapp.exec()
def main(): """""" qapp = create_qapp() event_engine = EventEngine() main_engine = MainEngine(event_engine) main_engine.add_gateway(BitmexGateway) main_engine.add_app(CtaStrategyApp) main_engine.add_engine(drEngine) main_window = MainWindow(main_engine, event_engine) main_window.showNormal() qapp.exec()
def main(): """Start VN Trader""" qapp = create_qapp() event_engine = EventEngine() main_engine = MainEngine(event_engine) main_engine.add_gateway(WeboptionGateway) main_engine.add_app(DataRecorderApp) main_window = MainWindow(main_engine, event_engine) main_window.showMaximized() qapp.exec()
def main(): """""" qapp = create_qapp() event_engine = EventEngine() main_engine = MainEngine(event_engine) main_engine.add_app(CtaBacktesterApp) main_engine.add_app(DataManagerApp) main_window = MainWindow(main_engine, event_engine) main_window.showMaximized() qapp.exec()
def main(): """""" qapp = create_qapp() event_engine = EventEngine() main_engine = MainEngine(event_engine) main_engine.add_gateway(RpcGateway) main_engine.add_app(CtaStrategyApp) main_window = MainWindow(main_engine, event_engine) main_window.showMaximized() qapp.exec()
def main_ui(): """""" qapp = create_qapp() event_engine = EventEngine() main_engine = MainEngine(event_engine) main_engine.add_gateway(CtpGateway) main_engine.add_app(RpcServiceApp) main_window = MainWindow(main_engine, event_engine) main_window.showMaximized() qapp.exec()
def main(): """""" # 创建 QApplication 对象 并进行初始化 qapp = create_qapp() # 事件引擎 event_engine = EventEngine() # 把事件引擎附加到主引擎里 main_engine = MainEngine(event_engine) # main_engine.add_gateway(XtpGateway) # main_engine.add_gateway(CtpGateway) # main_engine.add_gateway(FemasGateway) # main_engine.add_gateway(IbGateway) # main_engine.add_gateway(FutuGateway) # bitmex交易所 # main_engine.add_gateway(BitmexGateway) # main_engine.add_gateway(TigerGateway) # main_engine.add_gateway(OesGateway) main_engine.add_gateway(OkexfGateway) # 添加火币的交互通道 # 从json文件加载配置 # settings = load_json("connect_huobi.json") # for setting in settings["Keys"]: # # self.main_engine.connect(setting, self.gateway_name) # # sleep(10) # main_engine.add_gateway(HuobiGateway) main_engine.add_gateway(HuobiGateway) # main_engine.add_gateway(BitfinexGateway) # main_engine.add_gateway(OnetokenGateway) main_engine.add_gateway(OkexGateway) main_engine.add_gateway(HbdmGateway) # 把 app 保存到 apps 和 engines 里 main_engine.add_app(CtaStrategyApp) main_engine.add_app(CtaBacktesterApp) main_engine.add_app(CsvLoaderApp) main_engine.add_app(AlgoTradingApp) main_engine.add_app(DataRecorderApp) main_engine.add_app(RiskManagerApp) main_engine.add_app(ScriptTraderApp) # main_engine.add_app(RpcServiceApp) main_window = MainWindow(main_engine, event_engine) main_window.showMaximized() # qt 事件循环 qapp.exec()
def main(): """""" qapp = create_qapp() event_engine = EventEngine() main_engine = MainEngine(event_engine) main_engine.add_gateway(CtpGateway) main_engine.add_gateway(IbGateway) main_engine.add_gateway(FutuGateway) main_engine.add_gateway(BitmexGateway) main_engine.add_app(CtaStrategyApp) main_window = MainWindow(main_engine, event_engine) main_window.showMaximized() qapp.exec()
def main(): """""" qapp = create_qapp() event_engine = EventEngine() main_engine = MainEngine(event_engine) # main_engine.add_gateway(BinanceGateway) # main_engine.add_gateway(CtpGateway) # main_engine.add_gateway(CtptestGateway) # main_engine.add_gateway(MiniGateway) # main_engine.add_gateway(MinitestGateway) # main_engine.add_gateway(FemasGateway) # main_engine.add_gateway(IbGateway) # main_engine.add_gateway(FutuGateway) # main_engine.add_gateway(BitmexGateway) # main_engine.add_gateway(TigerGateway) # main_engine.add_gateway(OesGateway) # main_engine.add_gateway(OkexGateway) # main_engine.add_gateway(HuobiGateway) # main_engine.add_gateway(BitfinexGateway) # main_engine.add_gateway(OnetokenGateway) # main_engine.add_gateway(OkexfGateway) # main_engine.add_gateway(HbdmGateway) main_engine.add_gateway(XtpGateway) # main_engine.add_gateway(TapGateway) # main_engine.add_gateway(ToraGateway) # main_engine.add_gateway(AlpacaGateway) main_engine.add_app(DataFetchApp) main_engine.add_app(DbViewApp) main_engine.add_app(CtaStrategyApp) main_engine.add_app(CtaBacktesterApp) # main_engine.add_app(CsvLoaderApp) # main_engine.add_app(AlgoTradingApp) # main_engine.add_app(DataRecorderApp) # main_engine.add_app(RiskManagerApp) main_engine.add_app(ScriptTraderApp) main_engine.add_app(RpcServiceApp) main_window = MainWindow(main_engine, event_engine) main_window.showMaximized() qapp.exec()
def main(): """Start VN Trader""" qapp = create_qapp() event_engine = EventEngine() main_engine = MainEngine(event_engine) main_engine.add_gateway(SinopacGateway) main_engine.add_app(CtaStrategyApp) main_engine.add_app(CtaBacktesterApp) main_engine.add_app(AlgoTradingApp) main_engine.add_app(DataRecorderApp) main_engine.add_app(SpreadTradingApp) main_engine.add_app(ScriptTraderApp) main_engine.add_app(RiskManagerApp) main_window = MainWindow(main_engine, event_engine) main_window.showMaximized() qapp.exec()
def main(): """""" qapp = create_qapp() event_engine = EventEngine() main_engine = MainEngine(event_engine) main_engine.add_gateway(CtpGateway) main_engine.add_gateway(IbGateway) main_engine.add_gateway(FutuGateway) main_engine.add_gateway(BitmexGateway) main_engine.add_gateway(TigerGateway) main_engine.add_gateway(OesGateway) main_engine.add_app(CtaStrategyApp) main_engine.add_app(CsvLoaderApp) main_window = MainWindow(main_engine, event_engine) main_window.showMaximized() qapp.exec()
def main(): """Start VeighNa Trader""" qapp = create_qapp() event_engine = EventEngine() main_engine = MainEngine(event_engine) # main_engine.add_gateway(CtpGateway) # Gateway main_engine.add_gateway(SinopacGateway) # Strategy main_engine.add_app(CtaStrategyApp) main_engine.add_app(CtaBacktesterApp) # Function main_engine.add_app(DataManagerApp) main_window = MainWindow(main_engine, event_engine) main_window.showMaximized() qapp.exec()
def main(): """Start VN Trader""" qapp = create_qapp() event_engine = EventEngine() main_engine = MainEngine(event_engine) main_engine.add_gateway(SoptGateway) main_engine.add_app(OptionMasterApp) main_engine.add_app(RiskManagerApp) # main_engine.add_app(PortfolioManagerApp) # main_engine.add_app(PortfolioStrategyApp) main_engine.add_gateway(CtpGateway) main_engine.add_app(CtaStrategyApp) main_engine.add_app(CtaBacktesterApp) main_engine.add_app(AlgoTradingApp) main_engine.add_app(OptionMasterApp) main_window = MainWindow(main_engine, event_engine) main_window.showMaximized() qapp.exec()
def main(): """Start VN Trader""" # rep_address = 'tcp://*:2014' # pub_address = 'tcp://*:0602' # ts = TestServer(rep_address, pub_address) # ts.start() qapp = create_qapp() event_engine = EventEngine() # event_engine.register(EVENT_TRADE, ts.publish) main_engine = MainEngine(event_engine) main_engine.add_gateway(CtptestGateway) main_engine.add_app(CtaStrategyApp) main_engine.add_app(CtaBacktesterApp) main_window = MainWindow(main_engine, event_engine) main_window.showMaximized() qapp.exec()
def main(): """""" qapp = create_qapp() event_engine = EventEngine() main_engine = MainEngine(event_engine) main_engine.add_gateway(BitmexGateway) main_engine.add_gateway(CtpGateway) main_engine.add_app(CtaStrategyApp) main_engine.add_app(CtaBacktesterApp) main_engine.add_app(SpreadTradingApp) # main_engine.add_app(CsvLoaderApp) # main_engine.add_app(AlgoTradingApp) # main_engine.add_app(DataRecorderApp) main_engine.add_app(RiskManagerApp) main_engine.add_app(InvestmentManagerApp) main_window = MainWindow(main_engine, event_engine) main_window.showMaximized() qapp.exec()
def initiate(self): # first load history qapp = create_qapp() event_engine = EventEngine() self.main_engine = MainEngine(event_engine) self.main_engine.add_gateway(BinancesGateway) setting = { "key": "bEZCKVAkJYugYErdlg5GAj7PGgh72ieFIVtDVYgUwJuE7M0vLFM7lN7JuQPYB0AL", "secret": "LGZXmPUe4iXqOWlmjiUHGvf7XsdLSBWe5HfXauJoxu8qR9RTeZMUqzTOhcRiAK9K", "会话数": 3, "服务器": "REAL", "合约模式": "正向", "代理地址": "", "代理端口": 0 } enginename = 'BINANCES' self.main_engine.connect(setting, self.enginename) time.sleep(3) # cash_available = self.main_engine.engines['oms'].accounts['BINANCES.USDT'].available # print(' cash available {}'.format(cash_available)) self.load_history() for symbol in self.symbols: self.data_quote[symbol].min_volume = self.main_engine.engines[ 'oms'].contracts[symbol + '.BINANCE'].min_volume self.subscribe_quote() time.sleep(2) self.cancel_all_pendings()
def main(): """""" # 创建 QApplication 对象 并进行初始化 qapp = create_qapp() # 事件引擎 event_engine = EventEngine() # 把事件引擎附加到主引擎里 main_engine = MainEngine(event_engine) # main_engine.add_gateway(XtpGateway) # main_engine.add_gateway(CtpGateway) # main_engine.add_gateway(FemasGateway) # main_engine.add_gateway(IbGateway) # main_engine.add_gateway(FutuGateway) # bitmex交易所 main_engine.add_gateway(BitmexGateway) # main_engine.add_gateway(TigerGateway) # main_engine.add_gateway(OesGateway) main_engine.add_gateway(OkexfGateway) # 添加火币的交互通道 main_engine.add_gateway(HuobiGateway) # main_engine.add_gateway(BitfinexGateway) # main_engine.add_gateway(OnetokenGateway) main_engine.add_gateway(OkexGateway) main_engine.add_gateway(HbdmGateway) # 把 app 保存到 apps 和 engines 里 # main_engine.add_app(CtaStrategyApp) # main_engine.add_app(CtaBacktesterApp) # main_engine.add_app(CsvLoaderApp) # main_engine.add_app(AlgoTradingApp) # main_engine.add_app(DataRecorderApp) main_window = MainWindow(main_engine, event_engine) main_window.showMaximized() # qt 事件循环 qapp.exec()
from datetime import datetime, timedelta from vnpy.trader.ui import create_qapp, QtCore from vnpy.trader.database import database_manager from vnpy.trader.constant import Exchange, Interval from vnpy.chart import ChartWidget, VolumeItem, CandleItem from vnpy.trader.object import BarData from random import randint import pandas as pd """ """ if __name__ == "__main__": app = create_qapp() bars = database_manager.load_bar_data("IF88", Exchange.CFFEX, interval=Interval.MINUTE, start=datetime(2019, 7, 1), end=datetime(2019, 7, 17)) """ symbol: str exchange: Exchange datetime: datetime interval: Interval = None volume: float = 0 open_interest: float = 0 open_price: float = 0 high_price: float = 0 low_price: float = 0 close_price: float = 0
def main(): """""" qapp = create_qapp() event_engine = EventEngine() main_engine = MainEngine(event_engine) main_engine.add_gateway(BinanceGateway) setting = { "key": "pUJsE0fa62rpAEUo71P27kV6GUUA6fSlojhWodZ5kFjGQFPe2PSGt9Dn2eNE6aHf", "secret": "jMWC0Ld0YkCy1lEnupsU7YJMr3VPR8of9W80iGLOG816b2xarvnWUN8uyOEz3g5w", "session_number": 3, "server": ["REAL"], "proxy_host": "", "proxy_port": 0 } main_engine.connect(setting, 'BINANCE') time.sleep(3) # main_engine.event_engine.register(EVENT_TIMER, self.process_timer_event) yearlists = { '2017': '2018', '2018': '2019', '2019': '2020', '2020': '2021' } yearlists = {'2020': '2021'} # all existed currency futures symbols = [ 'SXPBTC', 'EOSBTC', 'ADABTC', 'BANDBTC', 'VETBTC', 'XTZBTC', 'BNBBTC', 'KAVABTC', 'XLMBTC', 'ZECBTC', 'COMPBTC', 'KNCBTC', 'ATOMBTC', 'RLCBTC', 'NEOBTC', 'ALGOBTC', 'XMRBTC', 'ONTBTC', 'THETABTC', 'IOSTBTC', 'ZILBTC', 'DASHBTC', 'OMGBTC', 'QTUMBTC', 'IOTABTC', 'BATBTC', 'DOGEBTC', 'ZRXBTC' ] symbol = 'BTCUSDT' quote = HistoryRequest(symbol, BinanceGateway.exchanges[0], start=pd.to_datetime('2020-09-21'), end=pd.to_datetime('2020-09-22'), interval=Interval.HOUR) df = main_engine.query_history(quote, 'BINANCE') symbols = ['btcusdt', 'ethusdt'] for symbol in symbols: quote = SubscribeRequest(symbol, BinanceGateway.exchanges[0]) main_engine.subscribe(quote, 'BINANCE') while True: time.sleep(2) for symbol in symbols: # x = main_engine.get_gateway('BINANCE').market_ws_api.ticks x = main_engine.engines['oms'].ticks info = symbol + "." + 'BINANCE' if info not in list(x.keys()): print('no data, resubscribe') quote = SubscribeRequest(symbol, BinanceGateway.exchanges[0]) main_engine.subscribe(quote, 'BINANCE') else: x = x[info] print("-" * 30) print('{} --- {} ask1 {}, bid1 {}, volume {}'.format( x.datetime.strftime('%Y-%m-%d %H:%M:%S'), x.name, x.ask_price_1, x.bid_price_1, x.volume)) """ symbols = ['LINKUSDT','WAVESUSDT' ] # symbol = symbols[0] # quote = SubscribeRequest(symbol, BinanceGateway.exchanges[0]) # df = main_engine.subscribe(quote,'BINANCE') INTERV = 'MINUTE' # INTERV = 'YEAR' for symbol in symbols: this_directory = 'C:\\Workspace\\crypto\\data\\' + symbol if not os.path.exists(this_directory): os.makedirs(this_directory) for key, var in yearlists.items(): startdate = pd.to_datetime(key + '-01-01') enddate = pd.to_datetime(var + '-01-06') print('load {} from existed file finished '.format(symbol)) quote = HistoryRequest(symbol, BinanceGateway.exchanges[0], start=startdate, end=enddate, interval=Interval.MINUTE) df = main_engine.query_history(quote, 'BINANCE') # HOUR this_model_file = this_directory + '\\' + symbol + '_' + INTERV + '_' + key + '.pkl' # MINUTE # this_model_file = this_directory + '\\' + symbol + '_' + INTERV + '_all' + '.pkl' with open(this_model_file, 'wb') as f: # first save model pickle.dump(df, f) print(2) #main_engine.send_order() """ # main_engine.add_gateway(CtpGateway) # main_engine.add_gateway(CtptestGateway) # main_engine.add_gateway(MiniGateway) # main_engine.add_gateway(SoptGateway) # main_engine.add_gateway(MinitestGateway) # main_engine.add_gateway(FemasGateway) # main_engine.add_gateway(UftGateway) # main_engine.add_gateway(IbGateway) # main_engine.add_gateway(FutuGateway) # main_engine.add_gateway(BitmexGateway) # main_engine.add_gateway(TigerGateway) # main_engine.add_gateway(OesGateway) # main_engine.add_gateway(OkexGateway) # main_engine.add_gateway(HuobiGateway) # main_engine.add_gateway(BitfinexGateway) # main_engine.add_gateway(OnetokenGateway) # main_engine.add_gateway(OkexfGateway) # main_engine.add_gateway(HuobifGateway) # main_engine.add_gateway(XtpGateway) # main_engine.add_gateway(TapGateway) # main_engine.add_gateway(ToraGateway) # main_engine.add_gateway(AlpacaGateway) # main_engine.add_gateway(OkexsGateway) # main_engine.add_gateway(DaGateway) # main_engine.add_gateway(CoinbaseGateway) # main_engine.add_gateway(BitstampGateway) # main_engine.add_gateway(GateiosGateway) # main_engine.add_gateway(BybitGateway) # main_engine.add_gateway(DeribitGateway) # main_engine.add_gateway(OkexoGateway) # main_engine.add_gateway(BinancefGateway) # main_engine.add_gateway(Mt4Gateway) # main_engine.add_gateway(Mt5Gateway) # main_engine.add_app(CtaStrategyApp) # main_engine.add_app(CtaBacktesterApp) # main_engine.add_app(CsvLoaderApp) # main_engine.add_app(AlgoTradingApp) # main_engine.add_app(DataRecorderApp) # main_engine.add_app(RiskManagerApp) # main_engine.add_app(ScriptTraderApp) # main_engine.add_app(RpcServiceApp) # main_engine.add_app(SpreadTradingApp) # main_engine.add_app(PortfolioManagerApp) # main_engine.add_app(OptionMasterApp) # main_engine.add_app(ChartWizardApp) # main_engine.add_app(ExcelRtdApp) # main_engine.add_app(DataManagerApp) # main_engine.add_app(PortfolioStrategyApp) """ main_window = MainWindow(main_engine, event_engine) main_window.showMaximized() qapp.exec() """ pass
def main(): """""" qapp = create_qapp() event_engine = EventEngine() main_engine = MainEngine(event_engine) main_engine.add_gateway(BinanceGateway) setting = { "key": "1AzLAhEYBbeVld4TxreM49MPt643AjP2WnA7zmFB5pGrozsOLiFWt4YKHGcFs7wH ", "secret": "TzYrDK4logB2EZZFLXbe8QTVDt9tOU1U8BnkvRkmNulRRMYmtzOoJ2FPtVGhfC2A", "session_number": 3, "server": ["REAL"], "proxy_host": "", "proxy_port": 0 } main_engine.connect(setting, 'BINANCE') yearlists = { '2017': '2018', '2018': '2019', '2019': '2020', '2020': '2021' } # all existed currency futures symbols = [ 'SXPBTC', 'EOSBTC', 'ADABTC', 'BANDBTC', 'VETBTC', 'XTZBTC', 'BNBBTC', 'KAVABTC', 'XLMBTC', 'ZECBTC', 'COMPBTC', 'KNCBTC', 'ATOMBTC', 'RLCBTC', 'NEOBTC', 'ALGOBTC', 'XMRBTC', 'ONTBTC', 'THETABTC', 'IOSTBTC', 'ZILBTC', 'DASHBTC', 'OMGBTC', 'QTUMBTC', 'IOTABTC', 'BATBTC', 'DOGEBTC', 'ZRXBTC' ] # 'SXPUSDT', 'EOSUSDT', 'ADAUSDT', 'BANDUSDT', 'VETUSDT', 'XTZUSDT', 'BNBUSDT', 'KAVAUSDT', # 'XLMUSDT', 'ZECUSDT', 'COMPUSDT', 'KNCUSDT', 'ATOMUSDT', 'RLCUSDT', 'NEOUSDT', 'ALGOUSDT', 'XMRUSDT', symbols = [ 'BTCUSDT', 'ETHUSDT', 'XRPUSDT', 'LENDUSDT', 'SXPUSDT', 'EOSUSDT', 'ADAUSDT', 'BANDUSDT', 'VETUSDT', 'XTZUSDT', 'BNBUSDT', 'KAVAUSDT', 'XLMUSDT', 'ZECUSDT', 'COMPUSDT', 'KNCUSDT', 'ATOMUSDT', 'RLCUSDT', 'NEOUSDT', 'ALGOUSDT', 'XMRUSDT', 'ONTUSDT', 'THETAUSDT', 'IOSTUSDT', 'ZILUSDT', 'DASHUSDT', 'OMGUSDT', 'QTUMUSDT', 'IOTAUSDT', 'BATUSDT', 'DOGEUSDT', 'ZRXUSDT' ] # symbol = symbols[0] # quote = SubscribeRequest(symbol, BinanceGateway.exchanges[0]) # df = main_engine.subscribe(quote,'BINANCE') for symbol in symbols: this_directory = 'C:\\Workspace\\crypto\\data\\' + symbol this_model_file = this_directory + '\\' + symbol + '_HOUR_all.pkl' if os.path.exists(this_model_file): print('load {} from existed file finished '.format(symbol)) with open(this_model_file, 'rb') as f: olddata = pickle.load(f) f.close() startdate = pd.Timestamp.now() - timedelta(days=20) enddate = pd.Timestamp.now() + timedelta(days=1) quote = HistoryRequest(symbol, BinanceGateway.exchanges[0], start=startdate, end=enddate, interval=Interval.HOUR) df_new = main_engine.query_history(quote, 'BINANCE') print('Updating finished ! ') datelists = [] closelists = [] highlists = [] openlists = [] lowlists = [] volumelists = [] for curdata in df_new: datelists.append( pd.Timestamp( curdata.datetime).strftime('%Y-%m-%d %H:%M:%S')) openlists.append(curdata.open_price) highlists.append(curdata.high_price) lowlists.append(curdata.low_price) closelists.append(curdata.close_price) volumelists.append(curdata.volume) newdata = { 'datetime': datelists, 'open': openlists, 'high': highlists, 'low': lowlists, 'close': closelists, 'volume': volumelists, } newdata = pd.DataFrame(newdata) lastdate = olddata['datetime'].iloc[-1] newdata = newdata[newdata['datetime'] > lastdate] alldata = olddata.append(newdata) alldata.drop_duplicates(inplace=True) with open(this_model_file, 'wb') as f: # second save training names pickle.dump(alldata, f) f.close() print(2) else: raise Exception('old data not existed for ---{}'.format(symbol)) return
def main(): """""" qapp = create_qapp() event_engine = EventEngine() main_engine = MainEngine(event_engine) # main_engine.add_gateway(CtpGateway) # main_engine.add_gateway(CtptestGateway) # main_engine.add_gateway(MiniGateway) # main_engine.add_gateway(MinitestGateway) # main_engine.add_gateway(FemasGateway) # main_engine.add_gateway(SoptGateway) # main_engine.add_gateway(SopttestGateway) # main_engine.add_gateway(SecGateway) # main_engine.add_gateway(UftGateway) # main_engine.add_gateway(HsoptionGateway) # main_engine.add_gateway(XtpGateway) # main_engine.add_gateway(ToraStockGateway) # main_engine.add_gateway(ToraOptionGateway) # main_engine.add_gateway(OesGateway) # main_engine.add_gateway(ComstarGateway) # main_engine.add_gateway(FutuGateway) main_engine.add_gateway(IbGateway) # main_engine.add_gateway(TigerGateway) # main_engine.add_gateway(TapGateway) # main_engine.add_gateway(DaGateway) # main_engine.add_gateway(Mt5Gateway) main_engine.add_gateway(BinanceGateway) main_engine.add_gateway(BinancesGateway) # main_engine.add_gateway(HuobiGateway) # main_engine.add_gateway(HuobifGateway) # main_engine.add_gateway(HuobisGateway) # main_engine.add_gateway(HuobioGateway) # main_engine.add_gateway(OkexGateway) # main_engine.add_gateway(OkexfGateway) # main_engine.add_gateway(OkexsGateway) # main_engine.add_gateway(OkexoGateway) # main_engine.add_gateway(BitmexGateway) # main_engine.add_gateway(BybitGateway) # main_engine.add_gateway(GateiosGateway) # main_engine.add_gateway(DeribitGateway) # main_engine.add_gateway(BitfinexGateway) # main_engine.add_gateway(CoinbaseGateway) # main_engine.add_gateway(BitstampGateway) # main_engine.add_gateway(OnetokenGateway) # main_engine.add_gateway(RohonGateway) # main_engine.add_gateway(XgjGateway) # main_engine.add_gateway(AlpacaGateway) # main_engine.add_app(CtaStrategyApp) main_engine.add_app(CtaBacktesterApp) main_engine.add_app(SpreadTradingApp) main_engine.add_app(AlgoTradingApp) # main_engine.add_app(OptionMasterApp) # main_engine.add_app(PortfolioStrategyApp) # main_engine.add_app(ScriptTraderApp) # main_engine.add_app(MarketRadarApp) main_engine.add_app(ChartWizardApp) # main_engine.add_app(RpcServiceApp) # main_engine.add_app(ExcelRtdApp) main_engine.add_app(DataManagerApp) main_engine.add_app(DataRecorderApp) # main_engine.add_app(RiskManagerApp) # main_engine.add_app(PortfolioManagerApp) # main_engine.add_app(PaperAccountApp) main_window = MainWindow(main_engine, event_engine) main_window.setMinimumSize(800, 600) main_window.showMaximized() qapp.exec()