Files
big-qmt/py-client/strategy/trend/__pycache__/open.cpython-311.pyc

29 lines
4.9 KiB
Plaintext
Raw Normal View History

2026-08-28 18:52:27 +08:00
<EFBFBD>
2026-08-28 22:56:35 +08:00
3<><33>jQ<00><01>x<00>dZddlmZddlZddlmZddlmZddlmZddl m
2026-08-28 18:52:27 +08:00
Z
dd l m Z m Z dd <0C>Zddd<12>Zdd<15>ZdS)uC趋势策略开仓逻辑,对应 Go 版本的 ``logic/open.go``。<>)<01> annotationsN)<01>datetime)<01>calc_buy_volume)<01>OP_BUY<55>)<01>PlaceOrderRequest)<02>
STATUS_ING<EFBFBD> StateItem<65>return<72>Nonec
2026-08-28 22:56:35 +08:00
<01><><00>|D<00>]<5D>}|jj<00>|j<00><00>}|<04>t |j<00><00>s<01>>|j<00>|jd<02><00>r<01>_|<01>|j<00><00>}|<05>|j nd}|dkr<01><>|j
<00> d|j|<06><00>s<01><>t||j j<00><00>}|dkr<01><>|j<00>d<05><00>}t!|jt$|j|||j<00><00>} |j<00>| <09><00>s<02><01>,|j<00>t-|j|||t.<00><06><00><00><00> |j<00><00><00>n*#t2$rt5jd|j<00><00>YnwxYw|j
<00>|j<00><00>t5jd|j|<07><00><00><01><>dS) u0逐个验证开仓信号并提交买入委托。N<E38082>BUYru开仓<E5BC80>base)<05>code<64> base_order_id<69>base_qty<74> base_cost<73> base_statusu$[状态] %s 开仓状态保存失败u[ZT][开仓] %s 买入 %d 股)<1E>
2026-08-28 18:52:27 +08:00
global_cfg<EFBFBD>signals<6C>get<65>
signal_key<EFBFBD>check_timezone<6E>timezone<6E>orders<72>busyr<00>
last_price<EFBFBD>
open_watch<EFBFBD> triggeredr<00> account_cfg<66> buy_value<75> new_order_idr<00>clientr<00>place<63>state<74>setr
r <00>save<76>OSError<6F>logging<6E> exception<6F>forget<65>info)
<EFBFBD>run<75>ticks<6B> open_signals<6C>item<65> signal_config<69>tick<63>price<63>volume<6D>order_id<69>requests
2026-08-28 22:56:35 +08:00
<20> py-client\strategy\trend\open.py<70> open_signalr8s<00><00><1C>5I<01>5I<01><04><1B><0E>.<2E>2<>2<>4<EFBFBD>?<3F>C<>C<> <0A> <18> <20><0E>}<7D>7M<37>(N<>(N<> <20> <14> <0F>:<3A>?<3F>?<3F>4<EFBFBD>9<EFBFBD>U<EFBFBD> +<2B> +<2B> <15> <14><15>y<EFBFBD>y<EFBFBD><14><19>#<23>#<23><04>#'<27>#3<><04><0F><0F><11><05> <10>A<EFBFBD>:<3A>:<3A> <14><13>~<7E>'<27>'<27><08>$<24>)<29>U<EFBFBD>C<>C<> <15> <14>!<21><15><03><0F>(A<>B<>B<><06> <11>Q<EFBFBD>;<3B>;<3B> <14><17>:<3A>*<2A>*<2A>6<EFBFBD>2<>2<><08>#<23> <0F>J<EFBFBD> <12> <10>I<EFBFBD> <12> <14> <10>O<EFBFBD> 
<EFBFBD>
<EFBFBD><07><13>z<EFBFBD><1F><1F><07>(<28>(<28> <15> <14> <0C> <09> <0A> <0A> <15><19>Y<EFBFBD>&<26><1F><1F>&<26>  <0E> <0E> <0E>
2026-08-28 18:52:27 +08:00
<EFBFBD>
<EFBFBD>
2026-08-28 22:56:35 +08:00
<EFBFBD> Q<01> <0F>I<EFBFBD>N<EFBFBD>N<EFBFBD> <1C> <1C> <1C> <1C><><16> Q<01> Q<01> Q<01> <13> <1D>D<>d<EFBFBD>i<EFBFBD> P<> P<> P<> P<> P<> Q<01><><EFBFBD><EFBFBD> <0B><0E><1D><1D>d<EFBFBD>i<EFBFBD>(<28>(<28>(<28><0F> <0C>4<>d<EFBFBD>i<EFBFBD><16>H<>H<>H<>H<>k5I<01>5Is<00>&F<02>$F'<05>&F'r<00>str<74>now<6F>datetime | None<6E>boolc<01>
2026-08-28 18:52:27 +08:00
<00>t|pd<01><00><00><00><00>}|dkrdS|ptj<00><00>}|jdz|jz}|<00>d<05><00>D]<5D>}|<04><00><00><00>d<06><00>}t|<05><00>dkr<01>=t|d<00><00>}t|d <00><00>}|<06>|<07><01>l||kr||cxkr|krnndS||kr||ks||krdS<00><>d S) u<>验证当前时间是否处于配置区间。
``*`` 表示全天允许;多个区间用逗号分隔,例如
``9:30-10:30,13:30-14:30``。同时支持跨午夜区间。
2026-08-28 22:56:35 +08:00
<20><00>*T<><<00>,<2C>-<2D>rrNF) r9<00>striprr:<00>hour<75>minute<74>split<69>len<65>_parse_minutes)rr:<00>current<6E>current_minutes<65>section<6F>bounds<64>start<72>ends r7rrIs%<00><00> <13>8<EFBFBD>><3E>r<EFBFBD>"<22>"<22>(<28>(<28>*<2A>*<2A>H<EFBFBD><0F>3<EFBFBD><EFBFBD><EFBFBD><13>t<EFBFBD><11>#<23>X<EFBFBD>\<5C>^<5E>^<5E>G<EFBFBD><1D>l<EFBFBD>R<EFBFBD>'<27>'<27>.<2E>8<>O<EFBFBD><1B>><3E>><3E>#<23>&<26>&<26> <18> <18><07><18><1D><1D><1F><1F>&<26>&<26>s<EFBFBD>+<2B>+<2B><06> <0E>v<EFBFBD>;<3B>;<3B>!<21> <1B> <1B> <14><1E>v<EFBFBD>a<EFBFBD>y<EFBFBD>)<29>)<29><05><1C>V<EFBFBD>A<EFBFBD>Y<EFBFBD>'<27>'<27><03> <10>=<3D>C<EFBFBD>K<EFBFBD> <14> <10>C<EFBFBD><<3C><<3C>E<EFBFBD>_<EFBFBD>;<3B>;<3B>;<3B>;<3B><03>;<3B>;<3B>;<3B>;<3B>;<3B><17>4<EFBFBD>4<EFBFBD> <10>3<EFBFBD>;<3B>;<3B>O<EFBFBD>u<EFBFBD>4<>4<><0F>3<EFBFBD>8N<38>8N<38><17>4<EFBFBD>4<EFBFBD><34> <10>5<EFBFBD><00>value<75>
2026-08-28 18:52:27 +08:00
int | Nonec<01><00> |<00><00><00><00>d<01><00>\}}t|<01><00>t|<02><00>}}n#ttf$rYdSwxYwd|cxkrdkrnnd|cxkrdksndS|dz|zS)uB把 ``时:分`` 转换为当天分钟数,无效值返回 None。<65>:Nr<00><00>;r@)rDrG<00>int<6E> TypeError<6F>
2026-08-28 22:56:35 +08:00
ValueError)rQ<00> hour_text<78> minute_textrErFs r7rIrIgs<><00><00><14>!&<26><1B><1B><1D><1D>!4<>!4<>S<EFBFBD>!9<>!9<><1E> <09>;<3B><1A>9<EFBFBD>~<7E>~<7E>s<EFBFBD>;<3B>'7<>'7<>f<EFBFBD><04><04><> <15>z<EFBFBD> "<22><14><14><14><13>t<EFBFBD>t<EFBFBD><14><><EFBFBD><EFBFBD> <0C><04>?<3F>?<3F>?<3F>?<3F><02>?<3F>?<3F>?<3F>?<3F>?<3F>!<21>v<EFBFBD>"3<>"3<>"3<>"3<><12>"3<>"3<>"3<>"3<><13>t<EFBFBD> <0F>"<22>9<EFBFBD>v<EFBFBD> <1D>s<00>AA <00> A <03>A )r r )N)rr9r:r;r r<)rQr9r rR)<11>__doc__<5F>
2026-08-28 18:52:27 +08:00
__future__rr)r<00>libsr<00>sdkr<00>orderrr%r r
2026-08-28 22:56:35 +08:00
r8rrI<00>rPr7<00><module>rbs<><00><01>I<>I<>"<22>"<22>"<22>"<22>"<22>"<22><0E><0E><0E><0E><1D><1D><1D><1D><1D><1D> <20> <20> <20> <20> <20> <20><16><16><16><16><16><16>$<24>$<24>$<24>$<24>$<24>$<24>(<28>(<28>(<28>(<28>(<28>(<28>(<28>(<28>7I<01>7I<01>7I<01>7I<01>t<11><11><11><11><11>< <1E> <1E> <1E> <1E> <1E> rP