Beispiel #1
0
def go():
    app = CtpBee("last", __name__)

    # 风险控制层
    # @app.risk_gateway.connect_via()
    # def conn(app: CtpBee):
    #     """
    #     用户可以在每个app实例下面来使用app.risk_control.connect_via() 来装饰函数
    #     接受一个参数来访问到当前app的实例, 以此判断是否进行下单 , 需要注意, 如果一旦返回错误, 那么函数这单将无法下载
    #     """
    #     return False  # return True

    #  或者
    # def conn(app: CtpBee):
    #     return False  # return True
    # app.risk_control.connect(conn)

    info = {
        "CONNECT_INFO": {
            "userid": "089131",
            "password": "******",
            "brokerid": "9999",
            "md_address": "tcp://180.168.146.187:10131",
            "td_address": "tcp://180.168.146.187:10130",
            # "md_address": "tcp://218.202.237.33:10112",
            # "td_address": "tcp://218.202.237.33:10102",
            "product_info": "",
            "appid": "simnow_client_test",
            "auth_code": "0000000000000000",
        },
        "INTERFACE": "ctp",
        "TD_FUNC": True,
        "MD_FUNC": True,
    }
    """ 
        载入配置信息 
    """
    app.config.from_mapping(info)
    """ 
        载入用户层定义层 你可以编写多个继承CtpbeeApi ,然后实例化它, 记得传入app, 当然你可以通过app.remove_extension("data_recorder")
        data_recorder 就是下面传入的插件名字
    
    """
    data_recorder = DataRecorder("data_recorder", app)
    """ 启动 """
    app.start()
    while True:
        app.query_position()
        sleep(1)

        app.query_account()
        sleep(1)
Beispiel #2
0
 def run(app: CtpBee):
     while True:
         app.query_position()
         sleep(1)
         app.query_account()
         sleep(1)