vnpy/vn.trader/gateway/__init__.py
chenxy123 9f6ea1fd5c 1. ctaAlgo模块改名ctaStrategy
2. 将vn.trader下的所有接口统一放到了一个单独的gateway文件夹中,并实现自动识别和加载
2017-03-18 12:19:51 +08:00

33 lines
836 B
Python
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# encoding: UTF-8
'''
动态载入所有的Gateway
'''
import os
import importlib
import traceback
# 用来保存Gateway类的字典
GATEWAY_DICT = {}
# 获取目录路径
path = os.path.abspath(os.path.dirname(__file__))
# 遍历strategy目录下的文件
for root, subdirs, files in os.walk(path):
if path != root:
continue
for foldername in subdirs:
# 接口目录名中必须含有Gateway
if 'Gateway' in foldername:
# 模块名称需要上前缀
moduleName = 'gateway.' + foldername
try:
# 使用importlib动态载入模块并保存到字典中
module = importlib.import_module(moduleName)
GATEWAY_DICT[module.gatewayName] = module
except:
traceback.print_exc()