admin
2025-01-15 f84dcf456dbfa318f490d6cf878be5d5d5262718
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
B
²S‡gt0ã@s~dZddlZddlZddlmZddlZddlmZddlm    Z    ddl
m Z e    ƒZ dd„Z d    d
„Zd d „Zd d„Zdd„ZdS)uN
 äº¤æ˜“方式模块(总览处理所有渠道的各种交易方法集合)
éN)Ú
data_cache)Ú logger_debug)Ú
get_logger)Úhuaxin_trade_apicCs¨tt|ƒdƒ}t||ƒdd}tjd|dd…||dd}t d|›¡t d|›d    ¡tj     |¡tj
     |¡t d
t tjƒ›¡t d t tj
ƒ›¡dS) NéédéiúÿÿÿT)Úblockingz    order====u买票 æ‰§è¡ŒæˆåŠŸï¼šã€u】u当前持仓数量:::u今日新增持仓数量:::) ÚroundÚfloatÚintrÚorderÚloggerÚinforÚposition_symbols_setÚaddÚaddition_position_symbols_setÚlen)ÚsymbolÚbuy_order_valueÚsec_nameÚpriceÚvolumer ©rõ8D:\量化低吸\low_suction_hx\strategy\order_methods.pyÚbuy_order_by_values  rc    Cs¸t d|›¡t||dƒ}t d|›d|›¡||kr–t||||ƒt d|d›d¡||t_t d|›d    ¡t d
ttjdƒ›¡nt d |›d |›d |›d¡dS)u>
    :param symbol: ä»£ç 
    :param available: å¯ç”¨èµ„金
    :param part_of_value: è®¡åˆ’委买 è´¦æˆ·ä½™é¢çš„ æ¯”例
    :param today_limit_up_price: ä»Šæ—¥æ¶¨åœä»·
    :param sec_name: å…¬å¸åç§°
    :param index:  æŒä»“对象列表中的个股对应序列号
    :return:  å°è¯•返回的订单数据
    u$当前账户可用资金available===ru当前计划比例===u,当前委托金额===u 【十分之é
u*可用资金】委买完毕,默认成功u买票执行成功:【u】u买票后剩余资金:u【u】,持仓:u小于计划委托:u,委托失败!N)rrr
Úsell_order_by_volumerÚ    available)Z part_of_valuerrÚtoday_limit_up_pricerÚindexrrrrÚbuy_order_by_part_value%s
 
r!cCsjtt|ƒdƒ}tjd|dd…||dd}t d|›¡t d|dd›¡t d    |dd
›¡t d |dd ›¡t d |dd›¡t d|dd›¡t d|dd›¡t d|dd›¡t d|dd›¡t d|dd›d¡t d|dd›¡t d|dd›¡t d|dd›¡t d |dd!›¡t d"|dd#›¡t d$|dd%›¡t d&|dd'›¡t d(|dd)›¡t d*|dd+›¡t d,|dd-›¡t d.|dd/›¡t d0|dd1›¡t d2|dd3›¡t d4|dd5›¡t d6|dd7›¡t d8|dd9›¡t d:|dd;›¡t d<|dd=›¡t d>|dd?›¡t d@|ddA›¡t dB|ddC›¡t dD|ddE›¡t dF|ddG›¡t dH|ddI›¡t dJ|›dK¡dS)LNriúÿÿÿT)r    z    order====u 策略ID====rZ strategy_idu 账号ID====Z
account_idu账户登录名====Z account_nameuZ委托客户端ID,下单生成,固定不变(掘金维护,下单唯一标识)====Z    cl_ord_idu标的代码====ru买卖方向====Zsideu开平标志====Zposition_effectu委托类型====Z
order_typeu委托状态====Ústatusú u委托价格====ru委托风格====Z order_styleu 委托量====ru委托业务属性====Zorder_businessu
财产====Z
propertiesu持仓方向====Z position_sideu委托时间属性====Zorder_durationu委托成交属性====Zorder_qualifierz order_src====Z    order_srcu"头寸来源(系统字段)====Z position_srcu委托拒绝原因====Zord_rej_reasonu委托拒绝原因描述====Zord_rej_reason_detailzstop_price====Z
stop_priceu 委托额====Úvalueu委托百分比====Úpercentu委托目标量====Z target_volumeu委托目标额====Z target_valueu委托目标百分比====Ztarget_percentu>已成量 ï¼ˆä¸€ç¬”委托对应多笔成交为累计值)====Z filled_volumeus已成均价,公式为(price*(1+backtest_slippage_ratio)) ï¼ˆä»…股票实盘支持,期货实盘不支持)====Z filled_vwapuk已成金额,公式为(filled_volume*filled_vwap) ï¼ˆä»…股票实盘支持,期货实盘不支持)====Z filled_amountzfilled_commission====Zfilled_commissionu委托更新时间====Z
updated_atu委托创建时间====Ú
created_atu卖票 æ‰§è¡ŒæˆåŠŸï¼šã€u】)r
r rr rr)rrrrr rrrr>sN(rc    CsÜt d|›¡t||dƒd}t d|›d|›¡|dkr||krPt||||ƒt dt|dƒ›d¡||tj|d    <tj|d    dkrÌt d
tj›¡t d |›d tj|d    ›¡|tjkrŽx´tjD]j}|d |kràt d|›d|d    ›¡|d    dkràtj |¡t d|›d¡t dttjƒ›¡qàWn>t d|›d|›d|›d¡t||||ƒ||tj|d    <nHt d¡t d|›d|›d|›d¡t|d||ƒ|dtj|d    <dS)uR
    :param symbol: ä»£ç 
    :param position_volume_yesterday: å¯ç”¨æŒä»“数量
    :param part_of_volume: è®¡åˆ’委卖持仓量的比例
    :param today_limit_down_price: ä»Šæ—¥è·Œåœä»·
    :param sec_name: å…¬å¸åç§°
    :param index:  æŒä»“对象列表中的个股对应序列号
    :return:  å°è¯•返回的订单数据
    u当前个股持仓手数===ru当前计划比例===u,当前委托量===ru 【十分之 ru" ä»“】委卖完毕,默认成功rz data_cache.account_positions == u下单后,【u!】的剩余可用持仓数量===ru 下单后【u】持仓手数volume===u【u<】的持仓已经卖完了,或代码已经不在持仓中u卖后持仓票数:::u】,可用持仓:u小于计划委托:u,无法委托,直接平仓!u(委托量小于等于零,委托失败!u,计划委托:u'<=0 ï¼Ÿ,无法委托,直接委卖100!N)    rrr
rrÚaccount_positionsrÚremover)Zpart_of_volumerZposition_volume_yesterdayZtoday_limit_down_pricerr Zsell_order_volumeÚirrrÚsell_order_by_part_volume™s8 
 
      
r*cCs@Gdd„dtjƒ}t ¡}t ||ƒ¡tjtjdd     ¡dS)Nc@seZdZdd„ZdS)zrun.<locals>.MyTradeCallbackcSst d|›¡dS)u 
            è®¢å•状态改变回调
            :param order_info: {'sinfo': 'b_603682_1736312765623', 'securityID': '603682', 'orderLocalID': '8100043081', 'direction': '0', 'orderSysID': '110018100043081', 'insertTime': '13:06:04', 'insertDate': '20250108', 'acceptTime': '13:05:46', 'cancelTime': '', 'limitPrice': 6.45, 'accountID': '00032047', 'orderRef': 130608, 'turnover': 6410.0, 'volume': 1000, 'volumeTraded': 1000, 'orderStatus': '4', 'orderSubmitStatus': '1', 'statusMsg': ''}
            :return:
            u收到订单回调:N)rr)ÚselfZ
order_inforrrÚon_orderÔsz%run.<locals>.MyTradeCallback.on_orderN)Ú__name__Ú
__module__Ú __qualname__r,rrrrÚMyTradeCallbackÓsr0T)ÚtargetÚdaemon)
rZ TradeCallbackÚmultiprocessingÚQueueZ    run_tradeÚ    threadingÚThreadÚ data_serverÚrunÚstart)r0Úqueuerrrr8Òs    r8)Ú__doc__r3r5Ústrategyrr7Úlog_module.logrÚstrategy.logging_configrÚtraderrrr!rr*r8rrrrÚ<module>s    [9