Exemple #1
0
    def open(self, *args: str, **kwargs: str) -> Optional[Awaitable[None]]:
        contracts_dict = read_contracts_json_dict()

        # 提取 contracts_dict 中信息变为 symbols_dict
        for key, value in contracts_dict.items():
            if value["exchange"] in symbols_dict:
                symbols_dict[value["exchange"]].append(
                    f"{key}.{value['name']}")
            else:
                symbols_dict[value["exchange"]] = [f"{key}.{value['name']}"]

        re_data = json.dumps({
            "exchanges": list(symbols_dict.keys()),
            "periods": periods,
            "time_format": time_format,
            "export_to": export_to,
        })
        self.write_message(re_data)
        print(1)
Exemple #2
0
    def onExchangeActivated(self, exchange_str):
        self.symbol_combo.clear()
        contracts_dict = read_contracts_json_dict()

        # 提取 contracts_dict 中信息变为 symbols_dict
        symbols_dict = {}
        for key, value in contracts_dict.items():
            if value["exchange"] in symbols_dict:
                symbols_dict[value["exchange"]].append(
                    f"{key}.{value['name']}")
            else:
                symbols_dict[value["exchange"]] = [f"{key}.{value['name']}"]

        if exchange_str in symbols_dict:
            for symbol in symbols_dict[exchange_str]:
                self.symbol_combo.addItem(symbol, symbol)
        else:
            err_msg = f"{exchange_str} is not in pytdx market_code_info.json file!"
            QtWidgets.QMessageBox.information(self, "载入失败!", err_msg)
            print(err_msg)
Exemple #3
0
    def __init__(self, main_engine: MainEngine, event_engine: EventEngine):
        """"""
        super().__init__()

        self.main_engine = main_engine
        self.event_engine = event_engine

        self.backtester_engine = main_engine.get_engine(APP_NAME)
        self.class_names = []
        self.settings = {}
        self.db_instance = DBOperation(get_settings("database."))
        self.dbbardata_groupby_df = pd.DataFrame()
        self.pytdx_contracts_dict = read_contracts_json_dict()
        self.pyccxt_exchange = Exchange()

        self.target_display = ""

        self.init_ui()
        self.register_event()
        self.backtester_engine.init_engine()
        self.init_strategy_settings()
 def __init__(self):
     self.backtesting_engine = BacktestingEngine()
     self.contracts_dict = read_contracts_json_dict()
     self.last_vt_symbol = ''
Exemple #5
0
    backtester.init_engine()
    return backtester.get_strategy_class_names()


# def onStrategyActivated(current_strategy: str):
#     strategy_setting_dict = getStrategySettingDict()
#     return strategy_setting_dict[current_strategy]


#############################################################
# DBOperation
#############################################################
db_instance = DBOperation(get_settings("database."))
# dbbardata_groupby_df = db_instance.get_groupby_data_from_sql_db()
# exchange_array = dbbardata_groupby_df['exchange'].drop_duplicates().to_list()
pytdx_contracts_dict = read_contracts_json_dict()
pyccxt_exchange = Exchange()


def getExchangeArray():
    dbbardata_groupby_df = db_instance.get_groupby_data_from_sql_db()
    return dbbardata_groupby_df['exchange'].drop_duplicates().to_list()


def onExchangeActivated(current_exchange):
    '''
    exchange变化触发, 返回db中相应 symbol list
    '''

    dbbardata_groupby_df = db_instance.get_groupby_data_from_sql_db()