PKA$O9backtester/__init__.py=0 w$Й *ȤNeđs{R c i8(VEO0r¢n ?7%㣿Am@(W0:TGS1 y`P =PKA$O ?)backtester/constants.py pwvQU0G    ytr Q W/.OVT RVZRZE N<,J^&WPB#!>* PKA$O>backtester/feature_manager.pyWMo8zw qэ-E!0es#H!R۴qr̛77C*-$j"d K˙J!'x`)g,i.XTzآ\(aE)En_ۻ> 4)&[&{ /Θ1 ylW~t2/4{%<%Q$QD 1G`*YW6q+ +sNsCD`E"Xv7=6=]zs:0'0tUww9]o>nvhp.~tq$iCyFNgv!fXZ"Hɞy!tJP]l܈LkB"Tà`)V *ju2Hٵ̢Mf꺭=dEU T_"̠Jd|+Jzhъ.ϯ= 6`^RK+Z:EoI#vz'J}zBJFjgZVL37y͌}'R  p-Q눋u؛Mm wgFqqnh3s),|جDdF-g0܂ eI!l}:f~'wNAiE 9^^_g= x7R*W7?ׁ,Ij>=yaBֳ.xے+|^jˣXb5qǏ,9:pȼ2]p uRQꢓ YfΔ@|M)6dXi^ .Ֆek] RVfvO}Rnig'2BX'geBץ;D;68V5:y== Xx}ܗz.C\t[Ied%DQl&j{ ={R|S,J濻_+HRAJNZRK,z>vhƙ*su;./PKA$OոG backtester/financial_fn.pyVKo6`0L%ZY@{*^ziRT,"$e;#S/[n@&G|ЅɲqYFʪblPRԦTT}\s äaLq{a(QnHgCRR(V !i=K,l%Y 3Ι`2ѵPtye :ޅ =(s>{@ [3p4 G]+FKUKtدjAdPCz, L UGqt];ϳ:njY:0—Ot6 ޏ[Mۅԯ4*^ x3"T| |~`>8Vtd!Bopk` ¸ {:Vtf T#$*d6Pq_ 6 U>za0^sÙV :S_:ajQ,~OEa4e䝸S=$Kf0[_al56ғSViuRm+ Mx3MSmCx&4d=#^Ɍd>sšxam~ 9+LDh7> ݛ!/Y1snHhQq`mnW} Nvs6'ܬIQa>r\!:? DqN~8MvL-A$$j'djRYEv;v9OfC9՛M͋7X*"5mP&+"?,1!o6.&$-8/:;[br6V4SSJ0ڙ&:};cU=asIw޵B0E;o~(h^OIEFԉwU\K{goKMAT|҆{k" #4/rVLB<&>16->Xqĵ"6Y0V=S Axz`*<~|Jl @ڬq$[\!EӜkfyHYlFʇ+经o݁@)Ϙ6!&b,(O=ѷh ;׋欉#Z3AԨj ղ*mCOE0YqikK.6.rՇ(I?cXS]iz\ݷ5uK@~y5\Ha~sd3RCb;rEQݖq 4KB E͈[DBnjǴ<"M>֔yrΆXm%&![-kmXt{JfrM u8hTݷR< z )%”L~?uN8hؓ 8fiy Z{+۰3OcPnVj ~u:qn9oB]Hr \ uJ'%a ]RBꃋL'#XrP!M0^da HL\ǒJ4q_@6IODo ?{ʫ> ˺WL2رbZ#F&q#Y1 ;v$h 1T=*-l7ͳCPJw c]؇bU"#%,hZZKw|srlJ-i b eBQMM= 6'bˀ;yVE0b f9)w$w0 |ܬ1ex.o/E^tx=|.+..$=6XdG葒'wAlZ {5ËAT'??Nn6ٙP=TPثoQ384fR}Xt6-ISO`aB9 _B7 ö0>u#Ro;Ӄ1KU[&pgT FYuW2“16tWkg3qQ2C0Lm`輌t{.# UF_R}{" հqA\O0聺4.]$(J@W֟!4;H4qW0t!)w7P f-24P(? h-6zlHQ*P þ}ioS>\c&lسC,չᅟ=vwK*uCEd1ώCQ'Nó^,N5 )UjڕGoEBWەe=:{Go oIfǻt+z1xߋ*5?MP% {GKTXWZp^y]wZVC˨4s :h8ߢf ane.{Nkds5&>);ϑO0=}HL_~ѱgĜzߝ*Rh1e+_$hj̭/r4 iN=yVFzzotav_SOTN@uKäO=ܧ=PKA$ON_'backtester/instruments_lookback_data.pySj0 50:vv)x>")y,K&|Y#Ho6$|Jc[73ZqWWP'#{^$箛+^Uc䕫*c7G2eG{}>^PBnrE&C{zGwz q51(+T2u~f`S[~PK48Oh֨?!backtester/instruments_manager.pyZ[oH~G?P0ٔD*+*rqx͢mc;M˶Hȱͱ]0a:Png \'(O&B\nt@7ߤ0/XOj)sئtmfV0 B(G(j8/nu,(k<χX|&P0̬<;uSw 'O(eYIqz9pAp;AG3+CRXhsYޖ<7 s72ZZvl Ѝ5AnjZ>-QHd8@QT. ڶQEngJMdDGwlLjMyvz a & IQk(o1F ]RxsyğdEhZFSnjt[nO?h!c_*% E.lvzh"[~,nlwdu [zB~mmj{ Vm:+V1[K1t*cYnĊ 7NpXH![4ig 6xe V\iyhE@(rl1~HVN`2ؕ:)wۻÌ;h1ժy|8|p%?6׿}u<>(t1G5y_Zn -QQa F_ݶ#Z2JMk9Ʈf?2e:|/v\. cwرbd.{*`<+= LO_VjxyZ5xuU&eg7z s`Q0M[=FU5nOi1~,|`JyZ;^Cy\6\؏ 3$)r!r7a C*,ž:omn͹/FSXY؉$+R(hAjq gOwܵ~w6UKg5TsO#z,NkY:5j9xgLQr8VN6kG2'p&sa\T34""yټi[ܢBcHqe7Ԋ:-.56o^+/&%V[ 9n9Ũ2'<({@JZF9 5XPKA$O]dW)backtester/lookback_data.pyY[o6~7@4۹Kk%Y Ф00X("SI'JERz}ؒ Vsx. P$Kz Ofc% j@9Tj. o;d2 eܠI@LI* SR?8N5]'I2;@dӗ'^ɤ lS=SuwNO_-Vfcԓ* D@3 Z'ZhUpb~wsn.;_fO7ﯯp!.Z<>ԫ>a<+&ՏP h6&1\%tU<؄"23xH 'tt3.; 1RDŽC`4+u )?+:HV5@YVbkP1Sx9ߪ=fr cV{Nrb54n.,[d~^oe:~^gJD)5[AZ5CGpQl1a6jƎ{(G=&ޮz;<-UۭKkU F!JٟTZRcQf_VyX,fɣe٫k/j}"ΣJW%1t}rUz̘LWߵ\PqjB UB$Bfz?3.E{W_?Kw8bMRc"FمP0Uf G駨N}ߚ;jXoQm!Dw5fT܃jLi ufI!,bT 0pؽj72.d~PrMd[ފ=}PFGmCJ QVO4I03R> <3U@3E7;\ 8ZV'[nq]6:hF=gSRU{4rzTLc/fOX=#)}&DML}>Iv^N$d56p lDhY?+V_Cwi}uQe!f֫+Le`2Ͽ sSPn6PKA$OBł#backtester/model_learning_system.pyU]@}?H^TƴvYpw鶔ad̘1&j4!z~Ȳ\Hm[B 9Σ+e%Vƅ7 %p`u|W >ȑHY+m5( D )IJ ϕ. %ji@e(dޞn @Ti92~PhtBw@2yv0/*h%M EL(Hm ?^)%EwBbyNgB4kT2Jm__[rHL*<X׎ g`{ņEW r%v mp4j>8z $P񪒱SKyBÜ+- 'W5x4%ڹN2մOcvr|}HDW_L0?bٹ60Nhɢ̌=BMp'Į$<6c~xX>}#e BmzO?O/ous{m9h0l;ED4@<i 5rb]5#3y81|t{+MýuynFeKrsFSUm NGw[^gPKA$Ou1 .backtester/model_learning_system_parameters.pyV]o0}G?XC 0/H}E]TU!7##۰"56ډͼs|OLh΅Br#ۭTpfxT n X!s"{n<`0Snoa)=O X0ӍX`-g?a^J EqLQqKҎx&;Ha :Zy3 *sUxĊSa"ME⠔4 OJAC [$X!M=63Y^ e+AJ*NCW8A2nlwo#Y̯9OQFߓNjǥ'EJ[Lm/"eD*ptʆȧ83Lg F=/k9Axdd\$i{ZKseC!ْ_(i͗PzT= 11#FZ\)E-1'#L0[X"$QU!30ABRQIqԠT,MyaNW66^y^U!äN/kxLrErfl`|s`nW} 6Mpяa<z.3|9ejq%kC՞8-? 'pam<^ԥ[\ДVzIH9Rq4_Iy\Ƒ+wTq16][,hPKV7O~1 backtester/plotter.pyVmo6nJ=n k3vhatR$ARY}GJeޒa{yw8L%xěCYgRoδPNQfTnfaX/T7 s̔\ZU%W{Kٜ4sEwmL1 ޱg%8wczLGv2Ge9L"pI%GDs1!6Jύ/V6t11tvj*yr_?O :%UD~=x?x@*H2s%_.΀ʀ%%< + (!" #GI,l};klU=,3u7~aЫw履丧TmY*"VWY$,)O܄%Cbr )20 v%[h"8:}LzRO:DL.Qǝz<͢(!}KNvb .UX*hEx)v.K0#>l{6a2.EwVJ/<GǴB,D[b?Io/fة2Eߠ}{_?o#{:S~}R GjBƽ-QHk,|6 :G%:j''y>2%6? |w>ypf tHO!Ŵf)D967!k5H: PKA$O,backtester/process_result.pyT[k0~?؃Rؖ`Rj;Irh;iAaN'˥5.Zpb8hY oRmс؃9U$qC]z fncM`Xj8c-@ RCm7 d+Vټ 2'FGaof- Ǫw=?:;|;yo&lW%JxBF* jpzdg>sԭگX "[ma)%%Av 1Za4U[u%>tvz ;Zw- HuK1׋\C5@zJΦT}-jt<9 8MDK!^ә*\~#A0zp7>PFw*$GQB#Xrws?XKLl#4HAH1<,*cӾ#kE吋9)t[qb-uZݜ?eQ-$6ǹܲ]%'kϮ)ܗ׾(͙pϒ}M7,qgCI ,6i7bV+v=6JqLT{W>)> hd&6I6˘&Ao#J^3Yn j1(i+dz"Ӎ~A"J`cLbacktester/state_writer.pyV[k0~?Q6 l uj˙"KitlIڎкwr%*rymnVOΰFaE~TT "}DYF9UYKpE V/I5ong+\-O1%2Q4:k`4ڏx[qV?SJ%c׿ 6_. Zy :oOOG&`Cta R3b!Znp>$cP-җ5+|ogeSպ" y۵u}CKUZhl?>.3D]R:UDs0֝M>b']NkcGHaZm^+o 1)c!-4֔a}+t) |]ȫuN=+TXvvjA&؞F r۶yȆ.[V ~7~f>x/E(A碠|>֪|pa[+<Y!l Z6Dfv%Gc3O}9*yF[%:C;@l5viya}mw@RfpJ&+a.gJAA"* kƁșXU4weh^<>~$\`ߢzF|5*^VoZ{7eb.;<53'KfHy㊇9! GiPn/N^;SG޹er_tI&'>ϻpapYAp'B1f{3w Oi3wvl7!yt3ۓ1Z.KL_QN%]W[]B/sۂեZ02u/^\ԙ0N:!^TPpM!a138_8'5?*\IRu4"N¨bxnmPmsǂ {l_WAGMAɝ.l@} Hv3nken6u)e_Y}բu[;Zm>g[QlB~q;Cqٞnҙŭ V R0Xaqgܞ"{z=Hg_iX/?Q{^C䄒;pDbCp4/`OԸ@k$w<œS@fc{:fMϹ(ID?jo۳~cY|c"ML]3›q 9 3G&@5!$ n5Sa6/Qj'xD7uD{T~'fPݾ54lK6 BS}:0n99$یVUݛL`ఐM =򂀅B 0F=A7̝)^5̔p,=Ub-vPﻒRo3J] %p&"I\o׉܂ )H[>y@EWLN;ROXb՗lߵvU7ִ+paݿfBMX-O2~3 a~8gDS&3iSjK8]yFgLKcu'O8D;Bhmϓ {@*R_ȭ{04KdϑO>|W%܀o.|^tE[9vb&7Q *+PKDV7Oe U 'backtester/trading_system_parameters.pyY7o@`H8FXX w@uS3^=1@czyTȾ{lNchɪb_*e1T0J[ϱH,dWZ'Ā ֈ,⹴<:M]Y؋C:-pDLn+-4+a pK"lUĬO940{f#|=肷+nDTFJfhJg`x3AYn`l-;B 61>l#2 o͍Ctc)XZ$V-bq|0eoW&Da@EnԫҼp-}݉jʒ=iŵmaDނІ$^HR.Ҁs?ai[fJ[Vx9%& R,qv,Bd E G(1jr,)іhqF(ΦL[WsQ*t{8UXT$ڃG,xDW`M[!rpIx!Nc);8{f(c$Y:٧+7%nѝ{p&h/E\~ uC6{qb? t1Q$ l|y >X FB.l' f#3Q: OBg&ȹDSϣP}$.ʛ=:D i`;+ %[Q \v05[ǒ{Kӭ,1SY[ć~zB+ 0 $Z= 8//PMٵ h~q~~zX.~:]^^-ӆi͝Sո]D)Vh67TwrJ6FpzYz)G.b r>u߁ P IN MIuo Zp47_Y, &DGgu8Ƕ4=jG`F#$02 !D^cм爇^2OWE/6!R>Q3qpy~д;eTFf_R Su8,_OܽD 74 >‡_}FWJ}}2^6ण%$K L@tiLفwrQOH Xynƈ?e؃C8h/f'ηM"qe? e^@'벡D›rZ\SDQ+tOĚCgPچwEQ ]"~VzFVsOBKBLoЮ1*sWɥЩAqM"'Leu.X!KMTF \/ZZf~'4؄ M`&,V EbSEk@Kpͷc>JU~}3HnUI us%Oz H福p:Х^vn6=p=']zp:<ca_߉:&N )4Լ{Rcԙ#7P1؆y92įSj([WŻ´w?NTy'Si_% /R3?o+P~^!#In(wuMC^!(_'Vo%(l4t̨ BWa/ xFZ  /BqږzEӴciְ @X|,(_">IA⎨Fqn C ;Jd]}p$Uw"`=_щbAI5jG(^V Ww]Y p/P$1MX[ĭJ=}-<2Ìc(-psQ:^fXɓUB#SKfаixd𛸈'|6O?[,j$iE|!_ox%[ $m_ =]'0y`ԜH<%PKA$Ö́W!backtester/dataSource/__init__.pyOɉWUVJ,-,M̋OI,I//-JNUQPBƗd 9i9Zфx@21#?] )9e(B\PKA$OXU+backtester/dataSource/auquan_data_source.pyo8J|"5KC]4Njvk4Er`5> #fE5 1'-$A{8 V@tv"_ˤe]Hc(b$=Aw 't<ț2ƌyϱ X.EvQ pWCX,"8BlDBemA3$*a,YɝjX s]^:`sʷND= WM19rwia:@-∻&ƍX%*oI6!0Uc+g"Sl/6d^.<9V?vr.͟ -]No˫gs+ȳYmx%_*r.O( |9̕mzofgYj)nsyk'lԯHFsF+ߍ&70_}A qgC^- @60ӞlQikzChn+L8`;1kA\&B)쭲ZW9Ew{)6hК '(욟i %֜t+2k*H/^sX@ok/ڍA[Zʸ70iP(F~1ٯNcXX52E>YZJ8)z$='Tan$mv`V.Tըl(̓_ݩksU)^L|>>G>rkazJZ84xӅr+f_ԫwQl OK?!:K[K疅tQrTU(roKƪ,O-( u1!b7K1*{y *&Tx0&"mom߸<5 2uM-)k=k*Pe 6 m[?n6f6F$Lo;v<ǛGK FϥAQ)N5yyOǎee4J[Ij,> PKul,OW.(backtester/dataSource/csv_data_source.pyXmo6 H^ !?K=+bi% \F:9eR#8(JnbE{H6jx`,$_J+LlK-VOO@SHcui? U)ӨѺnIaP5hϬ?'ZwoZT%xLMZV ݌O9f%޽3V(nq`+-']A=/*0P{M n < b[v (ק^ %3wfܡp'ԑ4mΌ;FDf\(7"űnBfٟ,|hiJғv4蟧aވ~>JrI^J]&jGޙ{"l\ӊ!έ N1 RuOZ?oyyAin97Ðy}-JDg !O] p#2gpީ=\DZZ `64ae%CpM>Ԧ=|t: 5|I^v_ES n7tnϮ؋ R fQ ڀ7bj=IED&{Bg=我Mԧ˻?wT|]O\KH["lfR9ӔܑlOv wʑ N-C/[onA[E*/0`|V/w 4cZtQs{{*O8Z^TqD|) 'AD@*L.0pRX$^ځfRL$h[ HT=:Yѻ+̵zFޤJnְ 9&I DxYx8~.ָ<0N٥]>tLl&drnsz->qA F2I >]<"W~?cw? ኵ` noEXB戀Y׋-EG'.y*/lI9뗍l~^k O}&88Ƶ^Գi3w 뙧EU=FDNtSԛ cdt7 {Q3 y@:'@FߵbX?C3aWLYNpQ=OC6ܔp+Vo^]2n5sNX),gH@Gt8̃YL\ ez3.c;̮!]gd*|!T׶ÌmPF(tL;jYXٓ9 󨣲: *^Ęb 9gtf ,˴E[pe(]L1cń=ZzK /؍ J]syIE$O=Ѓ,NiUZ23`x.BufAU9s3*Gl -!mA=\S @gf&(AOK=/֡tIprmQc,ӡi6uڵK 1Eel 1R .#Sk?-څXՊOg݌MմH z;,>q=6+jgS(h1?c2p .\r6Lye6ِ;Ƿaȑ>s1w#Ǭ7$4&6OM}Q1 Dǃ)sYFK !8PkPҭ;48$DOҌG%' }P??l J*ϨЎ'T&榳<=>Ǭzѹ 7ayoOy+~OJY6k5d2)o~4.,Xy񎝨V+C O_= gk?Jn:':&t:I'KVsAK89RHoz?r /PKA$O*backtester/dataSource/data_source_utils.pyW[o6~@HIuZMatDń%Q%Fs(ʦ/6tK"~sIUEf<[XaЉm%j{s$jIG) M2gp;ߜ .\++ыč$ZʍMwZl}z(ȝoZHq|.Ƨ'~o¶66 d:'HkDNdM\{'%I [ۘpXȚיH֨X ?ʊΥJ)9#u@0c dG#[w-_`&5vuVіF u ֈy9_?aXQX4)e-\ V61M)-^*&ٜ!ML Z[/T }t?v!3x|N;w\}}b}8MhO_"dtJ_(*^mg,׫ښ>H6 .^MoKtFܠ""A~$J *iLF ٝPKA$O*' 2(backtester/dataSource/nse_data_source.pyks6{fpH%qNw\{8x<Z$e_vAAR2>L '%"v4WS&rA7H /1U `/`B6d L]e2u{68}J51'wE qY !".C@~%ׯ<ap&Div %0HӨM{ ydئ r&G*Z4cqi P oG^ɐZzϧS2=? g.:bō%wn7C=XκbpB2uiW/\R]y7[kD6 95u 4M.J3ec~2O@~Nu@z\n*&)IaV10*-w4L38Nl^Oj\NĜS¦$&/d% ~Ng4! )L#(f"\ ͠UaijuVH;OrLl!w,| i"  5C[rBq&sijP;lMjl9$2a lm)2|n )Ech8Nӻ*PJYjhħ=cs&t{Sj̟mUT1hj^Ef,_aryCp]}EXpŒ{Nq&T̨m^n=!9d6>q*y1^MQMRwjMu UjqP> ѷ7H0͛kVfܵCZI^AjXr/jN`5c.Lk\^ "]/| /FRx]'d| }”3E.*iHd 燲$4lAV@r/Z(gX8?|Vʦ*C\sw1"xU@mmjU\ ^#Th^jHe\|T2c>|:hƓ?iW}qtpΊQ n~: CY;{0X|W+8-&  Rr9 ;O' j`e_5#(ے7=MCifH ^Gl #7U V k5e%)x7CCl+#7:a ʼ cIՐ AnD:rC`Te ҍB x_.^: #Д[ЩG+ک1 j$A#k0c%@0Tf?=ÎKLQq BEzP1Z-Te+qRQ27 lnId фXѰ$)z\"dܚ1БUb  +wu\wF2!(A;sUW(QLvAgÞ¨^ (pIrhYb);L2AeіG. n"2;3759cf F/3T]s:@VaI@!Y3>{y֑ʪYԞxD\r"BU9 @@UyhN^1jc@Q”wWҭ|69M#T\L)eU4W V W7AjR%Em7tO`ʆHavʖY^g.ųoF C+| R镨O9JЋyFS~\^Xׅ@~_䜭4KQ; GB$ꪩhy!۪꺫h2h4b5՞ N aCC-c.W1dVtPKA$O!+backtester/dataSource/quandl_data_source.pyXyo6?@AԩxC̛Ѣo, gITI*N0=0u86 CS^Ie5SɐF:Y.YBjrٜ:7y,RsT}Q皧 {CD2icH $|&"gYI3$"Hc15ß/C g2P(9m6K[([Y._IetIDp#.dFFeQR0 x%߱x d^36,]%h:pu/$RZb6ҼVMX,xb)G`26JY@L$3=ن挪(Ie\$Uq;Ap5+X9!pQӔ+/rWCj@Р! Y}#'|e}Ss  އ"g GigIFtR(xA_J;ዒdrTP}zuR2o %4RL)ZȒhd<.+"DGkFm C$/\im `k:nsJr[V[,DϓdK(i[M^z[EqxipcċXd've 7"4ЯZN\F&`Zt|t:šV?gg#GД0zd8 P^ג߭GA:XP[>\d \v}̶Z2sXwC݋i3Z# XPcC7!/㳁X2 hA 6\o;*o#.%̱Uxcd2c[++؍ EFC>aNeXVgO= c*{D"D(K}rDEmfaZd2:qartQ'? IƵbuFQM4+ &OONOg7W7) &%C}ᷫ̎n sgH$KXHQә G;5'u8A'V}7z%BJ&]$}YD?hCҔ5qjMY'VvqB> Əͼ(ĥHXjL QgvvBސpI2`ؕLěM{CNĊK(aKsK>~̯R=y#kxF~8tGhN DIQhB/WF+g++ZW>{A*LzJ'~)z|mCub,4*)Z|=b "bm!n"tp" r_rg]La!c% V\Rɕ H&,rQ8ZG'Vm$3<"9'"Br |{vCaŮ89vlGE~^]E@?7IԨc5sx l2hjTY^YBH-  # `ʢeAQ+n>Ӽ[ oƅx2<2v{o]}pU&Ha_F)X;acy1p z,%V_ G-dxv|R _?j`-'Yʐ V X*%Id(__? T#04ϏHſ[@^ʪ_SHR?tW f uBL(fKR4FQt!V0A[NKDZ VTA\&n' Jg*oUM%;<]Mm\.v=O&{y%i^B^킽@=8R[Hd46it]d;((5SN*=+|Gog̦ͷ]7̉oݗɗ 2 _$r+lsSG?T|=\O}I}_蘢_`%nټ9q@_\]ÅéDZެ^ڽ~qw:^2}UuppQk Dx OD>d26"i8gi_6>@[_pfk!3YPvk!d=vAz@E ln q#q1[)lXLBQދ?(^CPQK:jA%Ǭ[AҨp}RaܿuбzhiKz ,WZITurLxvtTyM2T+HPQ$.$Q hPps̃ZYb%wϓ(Rw:Ng1 C1# I<@$j: 57&/;,)myf)Sɤo0ck3Eag^՜}#޵Wk#SOsAEx3uӏ,rꏉ4e!zdTO]vr=|ka&mP{ho Ў|S Ö˸|#AiΦ-.4siN7>[o jVuSF aSՌQ!]c2D|C3,0U^s~ʌ* }mt^U<2RWb.p7j,.3 ʢVk~-o[lx Wo^E+Nry @dH3HӑDI"@+82qG*ϯy15̹O}v#hḀ%>^gY|Yg+CMrƔRUuGvTˎVRی6!x{|1=Ϊ2sMnH:9(?kXr`<I=++U(q}ׂ8)߿5R*h,eJѪVo,<߅p`5d8f߻ut|:Cv#:K00 v;آ۽[/FXLxg8bc/mߋ)޻'/L;Ɖ3 foqbcz"y܌֫EunQt=n渶Ə?ozrl8PKA$ON;M&backtester/executionSystem/__init__.pyOɉWUVJJ,NOHM.-ϋ/,.IUQIdc)H,*Q[iZ|PCYbNi*E @LX^.PKA$O:&3backtester/executionSystem/base_execution_system.pyJ0ܺB*= .^DBNH,ط7Iݵi-S|/i$C763uPF;BݖQJ}^2BVgFB6{tЎO{ոX'-yYϳG}^ =Q nf4r6X8`L.8 \;ko+Ѥ,%ޅln;|*qs[(qA+ &!^ラ/Ȫ"ԇp0$Z_rH8Aa3 ch..&[])D􉽮u)!F["$D%8LB9NBR7rw΁vb?9Ĵ AW׮ (ǍM3!+O: ȸf4[OUԾMs" 썡H>pW+?BP<]²c/gZ{؋wXb>c;&Xh7fDs>A_dBm8=U'Do,4$@e@eA @9(S4أtb&Ehjn #9El4\Ś !Xgh%]xN\ 8m>HP,)^%8K8U'5%ԧ%s1W7@W#fǥR*s  #J8qxMjw王rOk7ro Mߔygė@ԘUxjӍ@ݤ {ΚҴ2r0t^2nY7 rP[ܫgIpT}2!Z<62>g9 q l6j LiL9T,؅ t2i s8=95Wj wYE3#E~`Ͷ1DYxkXZ=e:zm΄p j *(^;G2+Apz{gMq^ p>v 6M\8Z@}ULͦzXSلWsA&+9`ZtPbtVe^O ­OMggH}R=-f+KPRkU24ث;UwfmgG&ZڶI|EėPYHem5ZbMH`tHQRf_T,**G&lo'Zׇ)OI_1^7>o6Zֹ8WSNX?DVG?l PKA$O*Yv;3backtester/executionSystem/pair_execution_system.pyUQ@~?,ᴗ}8 >]/Pȕ'$YҴqc |~^I 8Ch&WbU]B֛3 d׺_AE)/"*EɛoZ.^I1ty oc >JPGQq|g ?>ZFÆULQh-#Ri4-+z /z~Cd9_ isx?&" ӧabDvU!1t7@K[>hgAAzQz!F W/=j/e܏f8c7rYgVk;{hT7VP݆֬Fc\iTr,7yW<^ j9q&q2t7TSwy#%o%,7u&{]RCaE`R%+p'y)sUH l0͊ͷB1cY)kv,\K:óHdH´D RwѢ3#eSq=D!)$ 2J@eSwCl'PKA$O+95backtester/executionSystem/simple_execution_system.pyYkFpSGu>p>w_)% f#$ЮҸ^#IJ7Y))Yp].HU|,Ü,W V 6/L sQVɅܒ;%e%);1GU^ea_+p //J1h>4>=<@I SX\UIl@{7A)˗W4bv24Ж'@./I:mL_dv(jo B*) 2]&(iQ8u^в$X+6$7,_ -3 ;k>Th[WB+-:ޗd[%rmNJJx !Ýs3v.+ ]wDZsx0VBE>5!XjHIɭ$p\4eɭ)$waVCD ~&닲d[ PV0Uh hBIY5@#XLȄr1zt#7WL|y[MFnD$yD@2v% .-2 Y~OZBjCU4~MkI9&Cdc03b?V􌩶O )L'%MvMy!q_5}ӻ~։x/Ӂ68oAێL|T9??k 8LʶDF }ӈֳ6ާk<{7M8=A5RJh%R_˲vBL#+n.GԶV MY5ukٶOm$LZ<}a]ZY3BRޠo_Ͽ0N ,-'"GErssPF}DVca=w[!=Ro|iH=vqPKA$O{jl?backtester/executionSystem/simple_execution_system_fairvalue.pyW]k0}N AЇ[ꦃ1(4P֮t#׉#I.$ǖnlJyFmk Ba A* o|A6I s#Lq&yYӎl^(M7ahbd $Oc!꡾c¿8^FBsB{⨏*rAXC#Xk:ߪ ǯ(ftyI6DO=H飴4P"qY%쥃܅ =]eN1e(i>RvH&Q۟~ʩ6e9lY̪.ZՊY)vǬʾ==\ڸ%QQ! . \[#BF*^v=dl`%F5_.LU1 H+`Ttt=5hտx.5#˩ItCقiJwtV'S&&S;9kZm[1 9YNPKA$O Jbacktester/features/__init__.py}Sn0ݯt!ܥЭKN" Pmcaѿ/R܇'s8ccZc,GH`R]9ҰӀ3YOc%@ l蓦 =?ԭhЇIFnY-$⬡ J]^ӐGAbʖ#q -P`(BW{2db|Ԙ#4ZAەr .0w<ݝ16*59ʏtmJWrh5 E/"ֱ99A: U:I3OVz*`ź")I&*N{̽3:<{*pKdmڦz+`N0 8\G˜\ \զlP2,aG]iqT6X>|ۂ3Lfg3=gH7PKA$Odݧ?%backtester/features/argmin_feature.pyR]k0}/?7utҽ ֭2أjI"3֏ns9ޓ{R%9lI3 0EbJ ,pdO "̜B'ls]CA 5uRr&^k|?X4ɧϕ PKA$OX4N#4backtester/features/bollinger_bands_lower_feature.pyőMk@an&J ED(U]Bfg~ݍYj[+tsH&;;/F+VOΓrBXrUa=~(_^mTR5 jl,w>ОȿÈCeTx"Je BQqg!|ā]ƶP9^΍لR5rI\5ٹB*d"4I۫A hP&]Awusdar\N\9ϲTJ(-kZkw x_ n'ߘt.Q$>;M5h'PKA$OEP#4backtester/features/bollinger_bands_upper_feature.pyőMk@an&4{PZ$iv.GFWZ饛C2yx5 ްZ{rƒ>@X]S@hԕ@uE#} 5ɘuq+5\>NeA*A&BSpeU+t'HUaؠCE>!`γ,o-Rc6JxK-ůshme)ɸ7&s~ Ign-$v PKA$O#6&backtester/features/capital_feature.pyT]k0}/?7]j=ec\"飐IrڐA[={G$GBwAUVHU`=^_ +Ӛh wa:⣷weY־IX*^h,GaJ V?Qi0R}rCχ8'i8{i'` 1 q!%Q+'" UnhӇdys6R3ä1.<]ϫ<0Ỵ H<[G*C-Y-v<:avxI^A~f0 &LZӿ`BڢN[f̷R[3wBԒN5~0pPKA$OD})backtester/features/count_loss_feature.pySMk@mSIz, Ҥz[[~Z5q5~P*yofdR0x&N( .%rV^N'v]-d:I(Q nDF(eWs2ԯ"wR (5 yǕ%C9EJ4>l:g8Hays[ ʊnU&G/xrl%ۜ䘙Õw̤Jv$uRt@Q;dߎ$Tu浍 AZ\"->BXJJ" Pm":$+~Q?ˉT) ".P.c[bEbQSZ(:h-;h% ›Qbcu66ise-U;hlgcvXt͎+ sBAYϓjYct~OPKA$O#&+backtester/features/count_profit_feature.pySۊ0}_?[&1Iz)4JgMt1\ڿ_)cɹ[̜3s*)ըbi7ڌ-[KH$-*?Ŀx4(D6ueRSQdU~>"V9,!lҀ V~m?q?&ywh<Ħxwԓ׺z(pχkXԙW!ˆa瞜.cR*,Jo E-rroigPKA$Oʂ7:backtester/features/crossInstrument_correlation_feature.py}RMO0 #|[*@BM`i8%Z>*'Eۿ'1 <9$g> UyeZG=I_v6+umxqDyPjCbA_D(v.91ZVΔN|c u϶Sc:[sr > ognnVb~:۾[[Lyڹ}xCcQ䢳~QWȿ.UlBn>^n/vS4Zv(8Ǔ ,܏ٜ9T䴎OI91Ud%?PKA$Ozmkc3backtester/features/crossSectionMomentum_feature.pyQj0 Ł.Z en˭il9wdDYj9 <oJ7Xw| 7{Y|{Kg*(kV ,낥M9ܝ10=]4ݎ@ Օk:j< JqǵxY@:G}vG(kb]E{R>#o"͍In>Lʁ_1

kj&iu7ܞjھ5۞?{ cS4ifžWMߝlq&7Z'p VӨd]f0pX[Zl=Xu2OgGMt(6݇oΩ*VUTXr:[9OPKA$O1 1backtester/features/exp_moving_average_feature.pyR]O0}_p3dF 1.YKI[RNbbysD3x'ZT(*Rs`єÁQp)q/yfChy۷ պ U$BႋL*Q0̔P@D`+];d ۂYs̾w֎V3WJkCGVO#YZM76`qW.|C;5Ho2[RILrE|cBhD+=j"ᨃ%4O)LܸɭzCyl]76\;!eal\m+L;85K"xFfB:zؑ( ѡ7_{ny,L{,g&PKA$OYbacktester/features/feature.pyj@0(>@O E0nh4fg}{IP 815@+F0:Nj+˲YzDܞJ/vA%Z8`ŝzaR|O d \3Sb6',r*}Y؆ 9U!i[J ׵mj$O/7Q8<ܰo#zx.E:d^߳~X=PKA$O8u( %backtester/features/feature_config.py]k8 ),0$S۰e:PbYQ2,ɟ,sɓ/=Ik*k*n3J꣠⢎!@E9q(96aGΓ#5+]jVΫM hYQA˄Z]$Em&0AU\ ɉ r*~ gF&`l^Y$~ QƂ)5qJ4ω~G;p[K-zб tOV,XtQÀ dJOySͱ0!5`~sɏ=WI#eSv`+x"w|7?`,D RNV $yLHn3h-ay~hj;9(G~;J0GB K .>)*W0_{nx(]}.xa7|Æ>4SsD|L'u&~~fje3lm7\FF4B|syM[inn$*{%K<4![NC(^dز׮`0_3r.<`ɜP uW 6C :Eɵ3`r ^!,/amLidȲ 7g֙tZ ~,1-J;'a Aj?&5h'g1{z} 3'x-%6. $DI q&R&2eDo"EH@Ii( V{JԚ~$C%tc=-<`mC 7*Q)ʬ؇b,` +*=;ɟXd,mLnAGJ$Tz_L@8.ύ 'Ɓп4p:"b/bq޺`.?d4һ7JLn#MK3&lePKA$OQT 1backtester/features/ma_ribbon_distance_feature.pyTQk0~/?-z,n=3T뜊Xdh6wXRӴ U+=@M@_] 3wvj"Ym?ά 5avlvf?UC&חw+d.~ {3ǗOzԭ"kHG> 0I5xU&ϤjtFQ7Ȉ2:sKp 5t$_vk{S|;WN)&B:۪NoyùyeLtXh5&a| ;sRm$ :u, cZW! (Ojq`JLҳd@[ѲyIIdD*79i‚e1d#B]˱-8|?yП؂ytZ.xF*ܒck-(D  vYpl8.A 6흑Ǻ[5Qr{HN@¬(9s2?P!=q3h"# vib4c'7CAz6ޔ$-|VRXܽ'wzj5Zcr$|^^%J&$-'[H$JT(څXl ק_X`=ݐq~PKA$O$|$#backtester/features/macd_feature.pyMk0tv Bi]zShLB}ե[6d}' dBAiByްw;ds}lpT"Nr,X&xR*?kdt“Sǀ@wQC %mܚoBe(`Uacto&Os59YT' OKgU`lWKiZ_S/* Me;>xLhlf]M}FnȮ)< Gzǭ0nAXPKA$O:*backtester/features/maxDrawdown_feature.pyT]k0}?\؃HCǰ%|ѭ}TD,-}Wەhǹ];*, az<+m ,?',a'=$AV^m |Sپ0\n!Uf27P!\=A)+o9!CJlfX ]\^O90zu#\g+Ny1q!b=ӚSӯv{jP{/FY3ͲxO )R/d[V5f!E63}:hԞ{cC> 6PH炑p0{ 2c8׿kynғZEC.T9ܡT% *uYrOk?M=׊P.w38 l{/I| _3 ?PKA$O:UŊ.backtester/features/maxcapitalusage_feature.pySN0 #u cC\v&dZwDKq=ڮق ql brB< br)- LR?TzpM-b5HYSV5aV8P!crbb!ijM8o75+ H RFzFFӇ9bv|W˽z0*GdefJM5{fPKA$Oo'backtester/features/momentum_feature.pyR]k0}/?7uX׾6! (>dډHaݯ_RQgWU0枓IgI\T(2Vq`ݤYWD~+:') KUmޝi4ΪZeR.`SJ%j F}GbӦB15&(Q*cC{w"]%%٣0sBvhE/*cci.]rH8䆨;s-backtester/features/moving_average_feature.pyT]k@|7?,.y 54`[J9|w+!w)-[ig43RIŽ{Ƣkdi4lI[d:wԬA6Ť}0Wɝ_Vこ3P1ˠ%J*(֨lhи״Xcpu0k:x'jL5 }o%';Pl{ߕI#)^nrYLdJ]3EZ'>ļ ΖoQy=$Y2MHvˍߪE1bdHS(n\"Sc} yqG(U})tkA P%W# ف+cR ??xn`C O j~3v^m05ix,Y 턟gQ:!D84=1A5 N3W=// DǮ2˛wPKA$OiʒB)backtester/features/moving_correlation.pyRMK@ @ DAD+KdRfw~ͿwIu73mI‚+ƢNri4Y0뫰oƂ[A h7 @(cZCA9g!CI"ܛS `Q3xN n Li-ԲSϚor@a)Y~=tJ~8chKs߰;LKԡ,4|'Z aSTCNN3aQ˹Asy6 4CUjj4lh* 10<*IgDn5z:HF>hs/:r==Ïvˁ6GF@:LqSMNe"gc|PKA$O!backtester/features/moving_max.pyj0t dl]zSm$e5k-'3_J!mX&}!{cyvѢ֐)CntdU9ޔTAdo ?wڰԙhu/RO>#6kb[kn(ո'&h⚦9w j4wF^T*x򄒂|4\w:{بzb ijr -,󅌓_A] Y[Z- оPKA$OSf~!backtester/features/moving_min.pyj0t u]wPlZPRQO0+H 4`:e `g(X^'TһgIE]6lԣ[  AGgt`E]NUJ"H&B_ՃqѩCa19Eopኘb׫/PKA$OI : X2backtester/features/position_instrument_feature.pyuQMk0 tK!?`0R((ilY>qkcz{ҳܑ!1Rӡ`O.(=Zb/p [98ZXYs0k4Ie<@yE[GYl`3A[g:-=[{ 6wEVs Ά4mD&N}J9 Wk`أ >Tj_=Rxĕn$_z#?C6SR1N4N0.fp=u[-g3SίBnft5<,zPKA$On5n)backtester/features/profitloss_feature.pyUk0~/7mb=f-ނ)}NElHriOKuYӝJkEBP% uÅ̾7D76Ts)-"YUTtsG]zE\8dWrmSzָˆR.JktM]ƉlqMs"eľ:xyQ((J8vy\yYuo-/o">UOK+dRVK7pVa0k]AjAf8.qtDABhƚcϔ,}Ts ϸ0)OL|gDXD W8)>x;]^$]~ q ]e/Wmdf\XQ4fp+CX>8(2IzŸ*SS^C}-ǚre"sVmX)@U _^'mŽw艧AJbnzDJu~?hl")!rthQA ^,hFfjRp1ʶ6PKA$O/6#backtester/features/rank_feature.pyMk0Tp^z^4[L5k֯lrH}3y*Jl #%[BsZXdcxl]ӡ?+a=^z.LZ1&P&/dU,V +(3z3{V5_nR`S< s j4wF^Vj< “pHw:mT=Rˠ ^!`ԭ/#P7PɯT.l--{-#YH6_PKA$O}TP$backtester/features/ratio_feature.pyTn0W? R6pUՍ*E^#.gQls߯0*[fS)|rQi)E[45Bjx햓-k@f`&J;ѕXG{'O6 ̈iuw@%WZ N[}Tp|{hr|̃+CAfK4[6]1HT)T=vE8١5æ/Q!wL*Nh񮹑+ 7.|n.9- r6a)tؐhxnNOw lgÓ{O& H._. F G2C}nhw'ɊᴎEǻ %A°PKA$O׳5v$backtester/features/scale_feature.pyQj0{ @(mBGF^'= Z'.{3j {'K4z |j9:Pf>9xQ²Vy:$? 4Fg gs9S]9FRi7(ݵ|S͕Eq,36_nuqtDzQ_ ƭxJu/ܡE9b9az:3 ty#x|0e8، YӢX>h?#g#bu7vNIkNPKA$O3 <.backtester/features/score_fairvalue_feature.pyUQk0~/?!vxM26+PKEωl-lYtiٜlӧO FT(hQq<=e]T; UWH )xCNX)c~>65ڙ sHyQ o-uR&PWQ.Ơhc)A >n ޑP`!cNپWBgӱ;Q|sNS'<,D?(5R%{X0,~l8_tN2fzRG~bZjʸ`桇ch>g-t/&l]s =y x;Ҍ4"mIk!˽JDŽ2.&%I5"5=R] ޼> |LbX:@AWk-\QǸuiL`M^i =$wvv'> gbұ6kxxa{g J-|r3٦nČ+uwDlP%p3JGj̈B50;&m˥%u툊J򚢋lIrw+L@zNx5~[CO} ]P'|=ZβOﲈ:Ƒ8h&2ѫ'~FY#sQiLiɳ|x?iY–<"-AY/1pٍ%GX1*jBU7tjęFaU)'z'~O:mF]RS"U[c\u7hnaPKA$Oc: %backtester/features/score_problem1.pyVmO0MJ >NcڠCB2ɥvʯ߹yK)MK+%{|w~\t@*QT5d@XYsUz|ԽWMYoVΎ/-V_ܥ\@a ֮Y;ANR^֍+.+DSBU)'D&#{K-6Z%tZaN%^C[ 0,UrhO ,jx1) p^ph $i2`,! l+M .`#JsKHH-drN.U;Ǽ8Ǵf T:ד6BQƈ^2iĺnnH6es^pݔ#/PKA$O5>y)backtester/features/score_rank_feature.pyTMo0 l] Z nALgBaX؎e'ED|T-+Cm!\8j餵%NkɆi@Z,mq:NH>]6'%ViY{+m:%*G3 aޘkCAMHN_4~EZ#oh@0PQeYzʙ=!` t.h,q:)և(n)DhTu _%L5uG %g._{teEm|׻̵ "&RB“ `#8RV$ >YŜ|"|iKDg^zșxnI@N}.i>HS GK7<5(?PKA$OF EW)backtester/features/total_loss_feature.pySMo0an X)UI! Z6Qk/ mZUEH`{fޛ{ Hq4 BbI ܶʯ%%`_Yaq^W%Zã0 }.ss dh^DXA!l kD[hdI hLp Q~߷PgT3 qtS8C T!흝l&g4*2ȐRj~ gr<(0oGQBR$4)\[gEއ2/"wR (5J˒!^B "%J63U!0uX pEYт};!vU+ Q1[6g!69&opes61黒IOZ*V*t EoVF{.CXJҭ Q(sӸhY e%ʯ.ŷk!pg9*<-VT$|c9X1aX>pW` ;U*#wc;jDcR7cQdէ͘wWɝi\ל ]mvXjK8lSO&PȠӐF HUKW m//ɗ ]- {O; 7 BHT.PV/ fgEDfH _H _nx*ak[&Sd*),|=$BBÜ\OgzqȤ}zQ1a ~/qT " =PI zx$u0FQ<=#(`uLCGz~$ )1 5F{F()[Vś#5r 4I 7cTˣ1;c3z\a-'hY̵`h,Y )> m|$vjD/5ǖ74W̷y s@)'ʫXAByLx~dԹ:MzwGM.ß'SMj-()/-5+-z-%x-m,$_CJWfFtʫҜ ^"BۤW?Z޸JZR:= ć#'/`Vpڲlݶ~Y~!)H2u/ yxG> x1yW_؁or&qؒz.cJaPKA$O])backtester/features/vwap_price_feature.pyMO@$Ez5!1$D!C;ņnj[DC=nwg F;MJ .a($k~( ߳_RbiD\i.QMh0z$EQ4B"2=Ĕ`i+*&_YcPd\1eL ,b4/t*h(T;}V;vO4uSU6且8&Rff[V'ʽuVwkGߤ%V=$ğW_>َƬ=]•;%ovwqAM7S׀%jY8͓p"̆*LU͐wUg}5E%sUV~xg1UsQ,PKA$O4/(backtester/instrumentUpdates/__init__.pyK+UHJL.I-.I-+.)*M+ -HI "ė2s J<єr4,(5n`yrL/(m?XKq 4+>>1''>^V!KU@%{.pi.rPKA$O:)8backtester/instrumentUpdates/future_instrument_update.pySMo@Mm?j¡(4,𐭰KvZ}kL ٙagdJ`PTs.Qu„U QAJ*E2,Dae#ȡLvTHk[6(X9e| ZE6" 0 aefS g7VA& A^j/ OZq{,@@rVef|{=\ r79x&;Pt-#ge1zH=NTFc4Mx E4LXaӘ4MaHa qXs>QgЪOh_8y޸OV5|BiMOaO[.8sp\r6vr5Q /GvZ+XnLf/2iwRkezADD;bdQM'ߏ}# v\rM-xIUΉY><^a/ )gb L8J+L ,矊/1.GD~x"1&Xr zboH(/ 7x^6"1VR3UV2 !|"~TEhlYnȈ 2Ve`%\\s֊ Gbw8@$j٣ߞaxLV??v,v|kk# 8lիuH 1/pD&Q&䩦Z{ /Ә5#oѢ\1 ,8-PF}?ؼu|cɹ}V,>O܍X'THo!hFuFP(,7fJ8yޤD<ɈըaTH&$i@aN~t:qI.3q*Mȝ%XbU!_՛M`9za8u¯f@u4My? ?>N3U{|v&>z>/&f*7Ѽ;'ONFq~H,{4iLco,#zr8;PKA$O3VW7backtester/instrumentUpdates/stock_instrument_update.pyRn0#{KR|@ITH,cLpK_yPC.%dzV%Ĕ rҠK.T%Ԃ#=F9TK1,J4ג'6+1b+tb1ed-cU@p;Q** {pNbWVBI55dep0uՏ9CxX$G-Ÿ|nY*.ʸZvB5N O!4Hi ?aW`lh\/g?MV{u5zVnI?:c 'k-p^Gr}}޷D_- ˛PKA$OL|"backtester/instruments/__init__.pyK+UHJL.I-.I-+.)*M+)Fb+d(xExL+-)-J4 ,A1%yXKkLqI~r6SAȆr'+*Dr):B^]* h6cyPKA$O"X!"+backtester/instruments/future_instrument.pyPAn0GPPġQD2E*@/kr(Xy!4z/!5(LjM4A|I<:yY`݊5P1B"[g, 8pb=3l5jvPKA$O^$backtester/instruments/instrument.pyTMo GoZ\#YJUUc f 6l `xc&!(DY$nDpP`~ a?PKA$Oi" *backtester/instruments/stock_instrument.py@ wޡ#8)&ĈFr`1?Ge= d4mFאd$F jlF5u CN>Qf}gV)"HXg r sh #rW|H.w2EM\-R`~DKa=xyG7w Dq"ΗC )P&ٻPKA$O Tlbacktester/metrics/__init__.pyOɉWUVM-)L.VPKZ7O 7Mf #-backtester/metrics/metrics.pyZo۶?pI8K?m6`xmW4~qD,j{xE")ɖ MޗxG vSmHYje #d5X4Y,khfx{Ew0ۖh*Zree k%K 4u4atyz2KYFz6dC&~aTlk\enszOeޢnÖ?ER$q wRR#o)4e^UL[<^&܂ gƊ% [3yI HxXĆ ҆ `YD+ E ?g&l7' ys6ڕRI@oQ,4""*_ TWef4}&W5}JS9A†>j_gn'>39ofx"Q|9$4=ˌoA.x)#o4۸VIxzlK2h5ҎW:u_qߛu  +B2uM $Cw* h)NU aBpty,#USy0Y&\Qvq*)HCAf#? ݿU|d!9ԥ;s#qn0+[y[”y1Zw2vCmzx#;B6K۟ZIa36m( 1뜒ba#m=&K1p&wS'"W3# `O\?kb.] q̻~k^?Ti"ͫk7$f-&nɳxO['ݗ #>6)E-bLKͰNwβctC8YsB@<Lasw3׵jwUbzLq0 /xp$|xMPYtgIpgOFs ֿ7BPY & gϾziY8Rqz0DEکp3BjcW0x>tyqx[M1js>:qni{n/^Y[R]9b23%ؘ4D'ʣHX(%0Й=e~SP9 iܓ5q+#" }U1ʯw[^$l)?MӅ9D4Q =dڦt7kIu8i/ۧqho!ʚVށeP=׋1py tdU&;QL['TT.[?iW&h/>w=uDCrgɅF? N!\;!=b2$8p! 4qmHfeCC+z"o1exHlW+Jg?k]?0? kr AreU$8_:Dө@xmS  ;mvTpSz\B*AO4 ;WHZ)W77–ա+W@D*> *OكCh>-|:nyI7LX$>P N;C7L_B7_K1 [Kt{1Y˃+,5*`,uqY/McĬ0@HAHidVrQY`94\|Yؠa p $QzG9O88wO1lǤ,Y vk_8ny$,owY~ͅl0xHx}C =tv$6rn8rB4ȵsܓL(B~$ؚ)J7'YD{ "["ޠtK1/ t-;'8{IONA8w:6*C](9:4]vMϏMw :1\yZu- ym_jeMLԁ>h5Y_z{Aa=:eXkG/ge 375%0"lgw3\Ù"6,8Cw 9MAj$D^~ǿӗ8/%[,$Ս%}gՂK6p/qJsej2qƇ/2'y2k솑 K]މ:5]F5ZGmW͓:%backtester/sample_scripts/__init__.pyOɉWUVJK,/K)M/H,J-VQPJKM,)-d&d$cyPKA$O}{Y ?.backtester/sample_scripts/fair_value_params.py[o8\QCy`m4v-Ѷ6_fHJ^k{@(Γ3?G'3j?L,:n5ӐFgAy0o?0/qrhL \恈ig߯3'CRV }{{3|10hԓ2BEPLfBk=1(8cA#'C0" `՗Nng-u@YSpCBA<2ׂs_Áڶumj/s=kQg銘GM=vYe7*G6ʂMV18u>D8P #h-xp"W 1?O_?~y\^ؑ;cK&]=2"<H<9q$ њĜ/`!`ъzt=PxF0PiJ#;FCktxJ`D0% ,x`BUSRzˢ9MvqĹjbQ`P4Q['c#s)]L@JAF=b@= BIx jJI< w0\\נ\Y2_3D 仌N2s2ɇJAtC/)k@m&4@pZqvRULA=`Ka^(,w@\a 4$cXiK$)RĊ*`J0t0b@U(bȁl}L'\{hSn;<VRGZYJA>հU|nk sXהxS'%.i9 6iaƵ |s.4%2 bXvB @@ sgkD}(C.\>cCN$D'xza}$q6-J@)w`8NWA5.2_ d]lNy>utŇW犂(LA s|H/ }Iz-4p*`J2.W5<ey=*Sr!gg?|O9i:$0wGurJm~hlAݥ|l^rfo#4(Dz !oIJQVFC{{~)Uzc6E[۸g] Laq'R- mt/YrדVK'S0PLUۦ Fy[mlIS~ 7j$(9[} !݊U gUGFGC2Qx|n0']s70XPBD$}M+״V}P5՗j]oـy SM5.,&ɗUj~+T/cLu4uAݯy4H^tͅFzcZR]2}uR{+ܢ{ANśN' 1&L*n;y9}գ7|.j՟" $aZL/6gGӭ4uGv䑯Qhٽe `xt|2h%bu~ALq h7`yѬr-юk'k\b19JKs,Nn1FGVۥ*qrw4oC.5}07.>YY/  u5E\g3wغoʴr1OXj“;&p+?\f2A/;n _#ڠA.X2boW@S EE:1]NJ&ZQbb,%pت(dtI~2?*2样lw;Q㌋*ziE""/ތ^2OҴ8N$3L6^^ a;Fd ]Y!ftHZ3n"<ӧ A9.jƎ9۩$L3ZE6mџg)x~ DhDW=Mdy:C!íg/}I ŧ#]|gE_5wtC?.QJhŇuAyVQGҥs>pH:RV ВHt'1UVu6"[iihȫ: xܺԳ9ۡ6pmq@ŋ7MƗn>v`҃d]WzL|:d3SE_G];aYaF0}5ǎpcE8kf$$}!k2ol6)t$9'< /+;@=z?\H[ ֛2q6gԌ=PKA$Ops=gbacktester/timeRule/__init__.pyOɉWUV*M/*IUQP*,M+/,M-.G(-F $"rPKA$O[F | 'backtester/timeRule/custom_time_rule.pyVK0v7e_t%=4=hqW_ddBK)5!fFߌ"=) x ge!"61Su}_1UlhJLʸ1|%Qp~$WRٻJxن"J͖^.Cs4YTL eZ0k6pޮonU(!+1DήP!| NK  $<:Ζ%T86X0l$Vh5N#MnVE=t^ΆrvOGN'] x>C?q~s:0TþĈ'Gج` 7ɩ""gf FTԂ۞3%w]_&Ǝ溭Hdp{Jf:{:YІJ'!iH 8n{Us@S-tۣy&fصնDyL%^w8H+OE\MH ތ93g&PU"ak` s1A|g 8tB?%74NU HS?ƟBhzzuGyrfFP,ى%=c1ިȿL&1\YYM(; 4o92N^7̸AA'ц*' Y9; hׂa.ęVӲ\O(w',S/y'+ǘ:]S.nᓅ,OY8LZĎͺ`՚g%텑EPY . sNkqNp@8~GWd5>IOl wȖ#  G qxrDZ5>E,IKi}M6z۬WTk:Dyد4Gh`"g4dR  ǢU@9{װPe c*}EᮋR23L 0EN&iw}BLp\P!aG0_"7)8f>h 3 kj߭\ ιQWR'/Vb Brhǒmd?ăC#(⡕ ]` 1hK'- 3dsv*N{-p;hF tђRGP9d2g:Ÿx5c#Tٙ+uLµ;jRnv8yp0 t%'j/Ӧ0.Ef{PKA$O ,backtester/timeRule/quant_quest_time_rule.pyVQO0~=TIՒJQ i`{L| ~w^R$a}wB#u?fh'tQZ>2Q1q< G9g֏GW㑠+nXӣ-GB*9VNJ/ͥ⺒Ўʹv 67CE*-K+p$BY+Xbptbsг#~As E/GōnR~W~:rגR6am ^/vLLD>Ir]{K#Ce~`̫=;ɱXH v,ew&Rq {M%jkLH֤hXb.׸*.`bz$/d: t*#($qyΏ!+&">,kh/e5E^[L-GPS >l|[q.6ZUp%&>pnzlGh9. E!+KvN#<HO!S VUC'@nåG0Jď$>){!s):tIWuV˝۞+4od0zwo8xUx7[" *Dlei5*AGaT<:] =UX_ kO$Iq4Q] !T`t.r~}6'˳Ǔ/i]e,Mܪ}^sz֐0q4[eL PKA$OPP\ backtester/timeRule/time_rule.py51 Н;0\ @$WR".ԎitH:ָOFqUG 3U6ҵ "/ּPKA$OG6Y##backtester/timeRule/us_time_rule.pyQn Ę6MKwxngCeȒX}ny5#çt`Fx3c8~ŏ-d@pH)Y ЎV$82:jUugjxف/U'KR_u=@|{o04G$zDy=jg^M}eq41Xm]b~i4,mQ|u(UXgg\,欽aߖWdFhfD_+ 9N M֠ʳoPKgf9OJRv,&auquan_toolbox-2.1.5.dist-info/LICENSEZms3J3gqq>)u$$GG>Nﳋ#)ǝ~&Zb/>8!Vk%ZN}xo:mzr(^|Wan7o/N\\_7חxss+]U.wӓ ⫹T <<,l&Zv(ً'8!FԦo:+F*a֚fqeˍvˑ  ܋;U{)_akZ|'L_43QpGfz hz 9kc?y(Ԓa-}WVbe◂-&:K?c|%dr"ލr Jj`MW iUc+:=j٘> o^r.˚lG5lY38qZS-Ej(`FrȋuPb xc'i ,9ЅzKZ¤[ek}͋ߟ~&O =yβET= Qk8t"дt/f3y}GyHҬ($JPX;osr>%;'I0VZ࿶l4瓜eӺ D7CiENȒF!ի pO&rX}3e8]Zk6c=4O*cp. )X^5=drpVVSV/u9xr  ɼQbog`#!kDqSB(9!6f 8)V 0ODa48M>7+^vYk~Ӡ&|?-c%ȸ-0X ["hDԧ'PaO({Ikў'=M ?N::(Щ HAE;s-ik &7mKAu@ec VȓGffp>,(WwR|0%K)MдG6;'dm-)6BJX";Gmz%0%pA:C- <ؑ?bEKa[(N+!Wz\2ƹgl5:ImFbYwܹQtN|uբg8O z!.ǓElBkӐL*!kbk-ȼ|ՠ|%.ҺOc&CMV9ムvlԑL!l=C>(b=+5 trV)lwwk:tRD8{<u+ҙT= qN'ƒ~N+r62]9Pψ,ZSӕ'& :ܼ.6j@Uhs( ˽Ӟ98*ʹ\=eaU%rQ ~2zaD'%CQasB m$ϮofHǁN!^nU[ 'RȾRVl]%|)nQs%4I.cgSTcRiC.tJ:j&WaMN`0(l***Jr'6DK6U[0℥ôaѻ mιOi懎؇ha׾#P;a0|/&Aqk*/2 }"Z5Ot0/ aVlROQ5so '58Á_.)9^7sF7{TYǾSث@:&OJc'GaE{@{N<1\ -"TIw^hU.ʳ44^qkHs#ʄSWOgV+LzAN}nԣKgeDv0wԞ'O֪츀.k{F-_4)C1]܉LpqK&pq{{q}777o/⯋Kp"ihƚ|صGVʞ@^X~q-.?_ݾ z^xcp޿߾Svt#l MAl&>χngGbb맘΁8щkǐLS>\򨷼=cy'Ѱ쭖K%JIVKPz9wg=jiZWҽL7cs 9F 9[ӹ1uRWh .M&~k@Dg{QHAl'A6CO- EMłL6ȅHk=_$?_ʟ xb?X"9զ]7nfمsDDD2`55%?O MFc;+/^E70>mOZ8~ xtsb8/톡)Rd"Gk ]LSTzl8Ӟ ˂_&mb,_]_R=^x;+%O)E!W%Uc:H< ,:!NG< h'P;,T!Lg,!8B1b -cы٥\(6ݹ\ @W4 EQ˻a?kX xX9o!lw~Boؘnc7K?٤3qՑk"EY@0_M<,^ӭy|WߊQo!4MU~*Q,#,|d-+cL{D%dX9ط wWϠvX9)>>c9Ps+(_x +8 1zp.:*pイi~ܳbjOɀu!pwK}i$ Z̔W|yD4Ub a/;,ն[Wf]6w2︦VLCCGk4)x+4 O(մC[UX"Y646~/ ta,0ӢM SKy#_VPNB.F6yW5zx*=,:rx95bщrAp}mki!潪uY2 C "^GvDfxPP D[ƤP`%ke$ЦM@n7`|~F?>zX a젥m"KwK ]iV@T$$0Isù %$hEvW=L GXCL,xr>`\!}K!fxR6n qckac%7po=(Tz$ư!ץf Q4">H$?Ple!H*0Pqe͹hTlIUpPg #58 iuEގ\T@ ?O522/<Ȁ7u< 7aZ$Ofo/qeB_MgEBlգO/Qp'+'G& [%+F%EbFq\ ѵ$ďH`lAF/"i =b')L'!R/Qp)d͆!׵tj LrKOGvT7ԹfHm"Ey+$ m6(IQYYγ~SG1-ET\"&,>%5>*V#,Yt.wj" ?ؼd{ųjrkR21h.zz18VJ,l&Bc/3ƕlvM# :%b4=NSOm]Z5jyNtZf9.qE(x3yu > WLrnHW5)OРg)vĝlJ) j٣u9$91U`8`l?sq7w(2ZaR\#?CqXԑ-$Aƶ%C8oyO+lbD‘T#2&*Lm>|s?ߊY ^TН4!BcmܔGP;om+~/3%1DqE>eG4UhcZp"&o -D$bgԴbAX7} 7-aN2;Ö7ǐYpxhsE.k~ʐ{;:y8_0'9=g5raTrȋPhYkPpNGp" }ZYhۂMTğ g=z#_n <\§Ix[L}hnH2o{gCYphVNIS~1VR[e% l#~ѴM8cnf"֚)ezXnPfJrIJ9Uz|0LjDj'Z@)_ bʝg+AyY{\X. dzDUq\i[c=0[qY?@o!Qr[x|eStr!&=e륾rP/:L5>^鐬QDzkq".hO .J^O1oM:8ľ}7 wX\Fa'lvtZd-Od=zCTN0Ä;M٤JRdyd_iGlOHuWeoIl%qm.s-@, tV 6/F%>Ga0Cy"0QD?jF1"`Z'&q]D#} ר!B]ISis XKh Us)W fnbehPA4>C"_U]|_!fh新 5p:B|i_򽸘 t`vBp.7 QJŀ)ANv-ϭ yk#ؿ0R9pSw_%O&hILN_bM3kda}T{Ⱦ,h12Hrk!#5ԌMlgfh +fvd7[g<Ŀ$赖G@ E~ӎ4UK )Hg}Џ~gYG acl)4LMσ'q ]sgS#hn<3˛/#_C W;[lM+!2HbzU(LN=_sBKw^Al=ȳk2ȯt1}S{^Ē+l 4!yg @ā6FI] Ȯ ѥe1灒mhahk.>K>v_XQ km,O#MBWaHnt:|lR~߄H]C{AjE#A i6%D uů@įxi8jJ]'KxΕP)/=X;{ȫXnMD_W`t}TF\D9;6AûḉC}uo޺uę݊/K߾rV (' ؚFC^(ahQi'k^ r/O;ߘ_S(pIz[}K((T B+A{a`ݳ!x*ѓNuq/6mp`xrQV0>{O]*CKy$/&,J@?JJ ħ8}LÀSiʠYooo_WxǼNJ≽_wGaK(~/5@a;EldM%"CO>v4W|5)2/&_՘^e W<AvUdG XVIx1"wJ@.Ձk? <7i2aReB1Hj>Z':JbTz4@#Ξ9PKA$O9backtester/__init__.pyPKA$O ?)backtester/constants.pyPKA$O>backtester/feature_manager.pyPKA$OոG :backtester/financial_fn.pyPKA$O԰J#*%s backtester/instrument_data_manager.pyPKA$ON_'Wbacktester/instruments_lookback_data.pyPK48Oh֨?!backtester/instruments_manager.pyPKA$Oi v]backtester/logger.pyPKA$O]dW)backtester/lookback_data.pyPKA$OBł#%backtester/model_learning_system.pyPKA$Ou1 .'backtester/model_learning_system_parameters.pyPKV7O~1 *backtester/plotter.pyPKA$O,K/backtester/process_result.pyPKA$O>cL]2backtester/state_writer.pyPK0\7OPJ R 6backtester/trading_system.pyPKDV7Oe U '=backtester/trading_system_parameters.pyPK4ORy7ZHbacktester/version.pyPKA$OCtDIbacktester/versions.pyPKA$Ö́W!}Kbacktester/dataSource/__init__.pyPKA$OXU+Lbacktester/dataSource/auquan_data_source.pyPKul,OW.(Rbacktester/dataSource/csv_data_source.pyPK4Og$s-fbacktester/features/moving_average_feature.pyPKA$OiʒB)backtester/features/moving_correlation.pyPKA$O!Xbacktester/features/moving_max.pyPKA$OSf~!backtester/features/moving_min.pyPKA$OZT;+E*backtester/features/moving_sdev_feature.pyPKA$Om !fbacktester/features/moving_sum.pyPKA$O.backtester/features/portfolio_value_feature.pyPKA$OI : X2backtester/features/position_instrument_feature.pyPKA$On5n)>backtester/features/profitloss_feature.pyPKA$O/6#backtester/features/rank_feature.pyPKA$O}TP$Ibacktester/features/ratio_feature.pyPKA$Oi"gbacktester/features/rsi_feature.pyPKA$O׳5v$qbacktester/features/scale_feature.pyPKA$O3 <.backtester/features/score_fairvalue_feature.pyPKA$OQ ,backtester/features/score_logloss_feature.pyPKA$Oc: %backtester/features/score_problem1.pyPKA$O5>y)mbacktester/features/score_rank_feature.pyPKA$OF EW)backtester/features/total_loss_feature.pyPKA$OC +backtester/features/total_profit_feature.pyPKA$Ooi߀' '!backtester/features/variance_feature.pyPKA$O])backtester/features/vwap_price_feature.pyPKA$O4/(backtester/instrumentUpdates/__init__.pyPKA$O:)8backtester/instrumentUpdates/future_instrument_update.pyPKA$O[G/backtester/instrumentUpdates/instrument_data.pyPKA$O 1backtester/instrumentUpdates/instrument_update.pyPKA$O.8backtester/instrumentUpdates/option_instrument_update.pyPKA$O3VW7backtester/instrumentUpdates/stock_instrument_update.pyPKA$OL|"Kbacktester/instruments/__init__.pyPKA$O"X!"+ backtester/instruments/future_instrument.pyPKA$O^$tbacktester/instruments/instrument.pyPKA$OR* Xa+backtester/instruments/option_instrument.pyPKA$Oi" *Gbacktester/instruments/stock_instrument.pyPKA$O TlX backtester/metrics/__init__.pyPKZ7O 7Mf #- backtester/metrics/metrics.pyPK=48O)$Nbacktester/metrics/metrics_logger.pyPKA$OrB2="`backtester/orderPlacer/__init__.pyPKA$Ou2backtester/orderPlacer/backtesting_order_placer.pyPKA$O*c+backtester/orderPlacer/base_order_placer.pyPKA$Oa8>% backtester/sample_scripts/__init__.pyPKA$O}{Y ?.| backtester/sample_scripts/fair_value_params.pyPKA$O4 .6.backtester/sample_scripts/feature_prediction_params.pyPKA$Ops=g;backtester/timeRule/__init__.pyPKA$O[F | ';backtester/timeRule/custom_time_rule.pyPKA$O*UC$>backtester/timeRule/nse_time_rule.pyPKA$O ,Bbacktester/timeRule/quant_quest_time_rule.pyPKA$OPP\ Fbacktester/timeRule/time_rule.pyPKA$OG6Y##Fbacktester/timeRule/us_time_rule.pyPKgf9OJRv,&Gauquan_toolbox-2.1.5.dist-info/LICENSEPKgf9OKUw'Wauquan_toolbox-2.1.5.dist-info/METADATAPKgf9Owaa$Xauquan_toolbox-2.1.5.dist-info/WHEELPKgf9Os̄ ,Yauquan_toolbox-2.1.5.dist-info/top_level.txtPKgf9O6BJ(%Yauquan_toolbox-2.1.5.dist-info/RECORDPKmmq$m