
    *xih                        SSK Jr  SSKJr  SSKrSSKrSSKrSSKrSSKrSSK	r	SSK
r
SSKrSSKrSSKrSSKrSSKrSSKrSSKrSSKrSSKJr  SSKrSSKrSSKrSqS r \R:                  " S5        \R<                  " SS5        \R>                  " S	5        S
u  r r!r"r#r$r%r&Su  r'r(\RR                  " 5       \RR                  " 5       \RR                  " 5       sr*r+r, " S S5      r-g)       )Onedb)OnedataN)create_enginec                     U q g N)shared_counter)counters    //Users/mac/Documents/bak/k/oneclass/oneqsnew.pyinit_counterr      s    N    88f6e67ec8a48922bbb531b95687625d99ee263940a07561ae95f4648zmode.chained_assignmentignore)gMbP?g      ?r   r   r   r   r   )z	300027.SSz60.204.129.214c                      ^  \ rS rSrSrSU 4S jjrS r S rS rS r	S r
S	 rS
 rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rSrU =r$ )Oneqs   u    K线类 技术分析评分机制c                    > [         TU ]  5         [        R                  " 5       U l        U R                  5         [        5       U l        [        S5      U l	        g )Nr   )
super__init__pd	DataFrameallstocklistinit_parameterr   onedbr   onedata)self	stockcodeparent	__class__s      r   r   Oneqs.__init__   s?    ,,.7
QZr   c                    SU l         SU l        SU l        SU l        / SQU l        / SQU l        SSSSS	S
S.U l        / SQU l        SSSSSSS.U l        SSSSSSS.U l	        SSSSSSS.U l
        SSSSSSS.U l        SSSSSSSSSSSSSSSS.U l        [        R                  " 5       U l        [        R                  " 5       U l        [        R                  " 5       U l        [        R                  " 5       U l        [        R                  " 5       U l        [        R                  " 5       U l        0 U l        0 U l        0 U l        0 U l        0 U l        0 U l        0 U l        0 U l        0 U l        0 U l        0 U l        0 U l         0 U l!        0 U l"        [        R                  " 5       U l#        [        R                  " 5       U l$        [        R                  " 5       U l%        SU l&        [N        U l'        SU l(        [        R                  " 5       U l)        [        R                  " 5       U l*        [        R                  " 5       U l+        g)u   定义参数        r   )monthweekdaym30m5m1)mwdtfor)   r*   r+   r,   r-   r.   )d   2      
         g{Gz?g{Gz?g{Gz?g{Gz?g{Gzt?g{Gzd?r   g? )QSNDGNKLDDKaiGGLuoCHL1DDCGorGGCD1CHL
DDCGorGGCDDDCGorGGCD1ma30DDCGorGGCDma30GGdayDDdayi'  N),hpttlupttldownmstatusperiodperiodabp2abQSKJdiffbypspacer6   JGkeypointr   r   kdata_mkdata_wkdata_dkdata_tkdata_fkdata_oQS_mQS_wQS_dQS_tQS_fQS_oJG_mJG_wJG_dJG_tJG_fJG_oall_YLZCPnSpnspnsttl	newpnsttlrefreshK_timeinterr   sighavelistxgresultqsresultr   s    r   r   Oneqs.init_parameter%   s    
B7c#3CP	.	#TdSXagi !4dRVW
!"222N!"222NAA11!!STcdklz{  OP  bc  lm  vw  x||~||~||~||~||~||~												LLN||~ %"llnllnllnr   c                 \    [        5       nUR                  S5      nUR                  SSSS9  g )Nzselect * from divdataz./csv/divdata.csv	utf_8_sigFencodingindex)r   
From_tableto_csv)r   r   mydivs      r   get_div_fromdbOneqs.get_div_fromdba   s/     g  !89)KeLr   c                     [         R                   " 5       n[        R                  " 5       U l        [        R                  " 5       U l        [
        R                  " SS5      nS/n [        R                  " 5       nUR                  SSSS9n[        R                  " U[        R                  " SSS	./5      /S
S9n[        R                  " U[        R                  " SSS	./5      /S
S9n[        R                  " U[        R                  " SSS	./5      /S
S9nUR                  SSS
S9  XPl        U R                  R                  S   nSn[        R                   " Xg-  5      n[#        SU5       H  n	UR%                  U	S-  5        M     ['        SU5        Sn
[
        R(                  " U
[*        U4S9n[        R                   " Xj-  5      n['        SU5        UR-                  U R.                  U5      n[1        U6 u  p[#        [3        U5      5       HS  n	[        R                  " U R                  X   /S
S9U l        [        R                  " U R                  X   /S
S9U l        MU     U R                  R5                  [6        R8                  [6        R8                  * /S5      U l        U R                  R5                  [6        R8                  [6        R8                  * /S5      U l        [;        5       nUR=                  S5        UR=                  S5        UR?                  U R                  SSS5        UR?                  U R                  SSS5        ['        S[         R                   " 5       U-
  5        g !   [        R                  " S5      n GNd= f)Nir   stock_basicr5   L)exchangelist_statusz	000001.SHu   上证综指)ts_codenameTignore_indexz	399006.SZu   创业板指z	399001.SZu   深圳成指z./csv/tusharestocklist.csvrp   rq   r/   r   zXXXX corelist   initializerinitargsqtyperthreadxgallnewqsallnewr   	   	TTL time:) timer   r   rk   rl   mpValuetspro_apiqueryconcatru   read_csvr   shapemathceilrangeappendprintPoolr   mapxg_all_for_mpziplenreplacenpinfr   	del_table
into_table)r   	starttimer
   corelistpro	stockliststockqty	qtyperjobcoreqtyrz   	threadqtypoolr   resultabr   s                    r   	xg_all_mpOneqs.xg_all_mpl   s   ))+	llnlln((3"	C**,C		-"#	NI		9bll]k<l;m.n"o  C  DI		9bll]k<l;m.n"o  C  DI		9bll]k<l;m.n"o  C  DI :[W[\
 $ ""((+			(,-q!AOOAcE" "oh'	WWYLG:NYYx12n\*xx**84Ls1vA))T]]AD$9MDM))T]]AD$9MDM  --rvvw.?C--rvvw.?Cg
#
#z+a@z+a@k499;y01;	C$ABIs   %CM2 2Nc           
         [         R                  " 5       n[         R                  " 5       nU R                  nXAUS-    n[        SUR                  S   5        UR                  5        GH  u  pVUS   U l        [        R                  5          [        =R                  S-  sl	        [        R                  nS S S 5        [        WU R                  5        U R                  SS  S:X  a  [        S5      U l        O[        S5      U l         U R                  R                  U R                  S5      u  U l        U l        U l        U l        U l        U l        U R$                  S	   R'                  5       nU R$                  S
   R)                  5       n	U R                   R                  S   n
U R                   S   U
S-
     n X-
  X-
  S-  -  U l        U R*                  R-                  S5      U l        U R/                  5         U R1                  U R$                  U R                  S5      u  U l        U l        U l        U R1                  U R"                  U R                  S5      u  U l        U l        U l        U R1                  U R                   U R                  S5      u  U l        U l        U l        U R1                  U R                  U R                  S5      u  U l        U l        U l         U R1                  U R                  U R                  S5      u  U l        U l!        U l"        U R1                  U R                  U R                  S5      u  U l        U l#        U l$        U R                   S   RK                  S5      RM                  5       R-                  S5      U R                   S'   U R                   RO                  SS9U l        SnSn U R                   S   S   U R                   S   S   ::  a  SnOSnU R                   S   S   n  U R                   S   S   U R                   S   S   -
  U R                   S   S   -  S-  nUR-                  S5      n U R                   S   S   U R                   S   S   -
  U R                   S   S   -  S-  nUR-                  S5      n U R                   SS  n[Q        UUS   US   :     5      n U R                   SS  n[Q        UUS   US   :     5      n[        U RR                  S   U RR                  S   U RR                  S   U RR                  S   U RR                  S   U RR                  S   5         0 S U R                  SS! _S"U R                  _S#US$   _S%U R>                  S&   _S'U R>                  S(   _S)U RR                  S   _S*U RR                  S   _S+U RR                  S   _S,U RR                  S   _S-U RR                  S   _S.U RR                  S   _S/U R2                  S   _S0U R6                  S   _S1U R:                  S   _S2U R>                  S   _S3U RB                  S   _S4U RF                  S   _0 S5U R2                  S6   _S7U R6                  S6   _S8U R:                  S6   _S9U R>                  S6   _S:U RB                  S6   _S;U RF                  S6   _S<U R2                  S=   _S>U R2                  S?   _S@U R2                  SA   _SBU R2                  SC   _SDU R2                  SE   _SFU R2                  SG   _SHU R2                  SI   _SJU R2                  SK   _SLU R2                  SM   _SNU R2                  SO   _SPU R2                  SQ   _E0 SRU R2                  SS   _STU R2                  SU   _SVU R6                  S=   _SWU R6                  S?   _SXU R6                  SA   _SYU R6                  SC   _SZU R6                  SE   _S[U R6                  SG   _S\U R6                  SI   _S]U R6                  SK   _S^U R6                  SM   _S_U R6                  SO   _S`U R6                  SQ   _SaU R6                  SS   _SbU R2                  SU   _ScU R:                  S=   _SdU R:                  S?   _E0 SeU R:                  SA   _SfU R:                  SC   _SgU R:                  SE   _ShU R:                  SG   _SiU R:                  SI   _SjU R:                  SK   _SkU R:                  SM   _SlU R:                  SO   _SmU R:                  SQ   _SnU R:                  SS   _SoU R:                  SU   _SpU R>                  S=   _SqU R>                  S?   _SrU R>                  SA   _SsU R>                  SC   _StU R>                  SE   _SuU R>                  SG   _E0 SvU R>                  SI   _SwU R>                  SK   _SxU R>                  SM   _SyU R>                  SO   _SzU R>                  SQ   _S{U R>                  SS   _S|U R>                  SU   _S}U RB                  S=   _S~U RB                  S?   _SU RB                  SA   _SU RB                  SC   _SU RB                  SE   _SU RB                  SG   _SU RB                  SI   _SU RB                  SK   _SU RB                  SM   _SU RB                  SO   _E0 SU RB                  SQ   _SU RB                  SS   _SU RB                  SU   _SU RF                  S=   _SU RF                  S?   _SU RF                  SA   _SU RF                  SC   _SU RF                  SE   _SU RF                  SG   _SU RF                  SI   _SU RF                  SK   _SU RF                  SM   _SU RF                  SO   _SU RF                  SQ   _SU RF                  SS   _SU RF                  SU   _SU R4                  S   _E0 SU R4                  S   _SU R4                  S   _SU R4                  S   _SU R4                  S   _SU R8                  S   _SU R8                  S   _SU R8                  S   _SU R8                  S   _SU R8                  S   _SU R<                  S   _SU R<                  S   _SU R<                  S   _SU R<                  S   _SU R<                  S   _SU R@                  S   _SU R@                  S   _SU R@                  S   _E0 SU R@                  S   _SU R@                  S   _SU RD                  S   _SU RD                  S   _SU RD                  S   _SU RD                  S   _SU RD                  S   _SU RH                  S   _SU RH                  S   _SU RH                  S   _SU RH                  S   _SU RH                  S   _SU R*                  _SU RT                  _SU RV                  _SU RX                  _SU_EXUUUS.EnUR[                  5        H  u  nn US:  a  [-        U5      nUUU'   M  M!     [         R\                  " U[         R                  " U/5      /SS9n[         R\                  " U[         R                  " U R2                  /5      /SS9n[         R\                  " U[         R                  " U R6                  /5      /SS9n[         R\                  " U[         R                  " U R:                  /5      /SS9n[         R\                  " U[         R                  " U R>                  /5      /SS9n[         R\                  " U[         R                  " U RB                  /5      /SS9n[         R\                  " U[         R                  " U RF                  /5      /SS9nU R_                  5         GM	     X#4$ ! , (       d  f       GN= f!    GM&  = f!   [        S5         GN= f!   SnSn GN= f!   Sn GNg= f!   Sn GN$= f!   Sn GN= f!   Sn G
N= f!    GM  = f)Nr/   stock qty =r   r   r   .BJallhighlowclosecalculate self.hp errorr#   r$   r%   r&   r'   r(         ma250bfillmethod  r4   ma30scode   r   	stocknamer   r   
reviseTimecCQSmQSwQSdQStQSfQSoma30mma30wma30dma30tma30fma30oma10mma10ma10wma10dma10tma10fma10ospacePmspacePprofitPmprofitPriskPmriskPNDGmr7   NKLmr8   DDmr9   Kaimr:   GGmr;   Luomr<   CHL1mr=   DDCGorGGCD1mr>   CHLmr?   DDCGorGGCDmr@   spacePwprofitPwriskPwNDGwNKLwDDwKaiwGGwLuowCHL1wDDCGorGGCD1wCHLwDDCGorGGCDwspacePdprofitPdriskPdNDGdNKLdDDdKaidGGdLuodCHL1dDDCGorGGCD1dCHLdDDCGorGGCDdspacePtprofitPtriskPtNDGtNKLtDDtKaitGGtLuotCHL1tDDCGorGGCD1tCHLtDDCGorGGCDtspacePfprofitPfriskPfNDGfNKLfDDfKaifGGfLuofCHL1fDDCGorGGCD1fCHLfDDCGorGGCDfspacePoprofitPoriskPoNDGoNKLoDDoKaioGGoLuooCHL1oDDCGorGGCD1oCHLoDDCGorGGCDoConfirmedJGmConfirmedJG
CurrentJGm	CurrentJGJGdonemJGdoneQXmQXJGQRmJGQRConfirmedJGw
CurrentJGwJGdonewQXwJGQRwConfirmedJGd
CurrentJGdJGdonedQXdJGQRdConfirmedJGt
CurrentJGtJGdonetQXtJGQRtConfirmedJGf
CurrentJGfJGdonefQXfJGQRfConfirmedJGo
CurrentJGoJGdoneoQXoJGQRorE   rF   rG   rH   yearup	yearvalue
yearvaluep	yearvs30p	yearupqtyd30upqty  Tr   )0r   r   r   r   r   iterrowsr   r	   get_lockvaluer   r   krV   rU   rT   rS   rR   rQ   maxminrE   round
cal_ma_allcal_qsrW   r]   rX   r^   rY   r_   rZ   r`   r[   ra   r\   rb   rollingmeanfillnar   r6   rF   rG   rH   itemsr   r   )r   nrk   rl   r   rs   rowcurrent_counthhhlllttlkcprU  rW  rX  rY  tmpkdatar[  rZ  tmpkeyr_  s                         r   r   Oneqs.xg_all_for_mp   s   %%	ae$	mY__Q/0"++-IEy>DN  ((*$$)$ . 4 4 + -/~~bc"E)$QZ$QZ^b^j^j^l^lmqm{m{  }B  _C]T\$,t|DLQUQ] V$((*CU#'')C##A&D||G$T!V,B137C-0a(
 OO/3{{4<<Y`/a,DL49/3{{4<<Y_/`,DL49/3{{4<<Y^/_,DL49/3{{4<<Y^/_,DL49/3{{4<<Y]/^,DL49/3{{4<<Y]/^,DL49$(LL$9$A$A#$F$K$K$M$S$STU$VDLL!,,--W-=DLFI <<(,dll7.CB.GGFF"ll73B7I
  LL1"5W8Mb8QQSWS_S_`gShikSllorr
%++A.
<</3dll76KB6OOQUQ]Q]^dQefhQiiloo	#//!,	cd+x(9HW<M(MNOde,'):Xg=N)N OP	 $'''"4776?4775>$''%.QUQXQXY]Q^_c_f_fgk_lmWT^^Aa0 T^^ KX[\bXc djkoktkt  vB  lC   DG  HL  HQ  HQ  RU  HV 4777+,1$''&/BGPUW\]a]d]dej]klqrvryryz~r AF  GK  GN  GN  OS  GTTYYv./6tyy7HIPQUQZQZ[aQbcjkoktktu{k| ~E  FJ  FO  FO  PV  FW X_  `d  `i  `i  jp  `q TYYv. 07tyy7H JQQUQZQZ[aQb dkkoktktu{k| ~E  FJ  FO  FO  PV  FW X_  `d  `i  `i  jp  `q tyy2	 4>dii	>R	 T\\`\e\efm\n	
 DIIe,
 .4DIIe4D
 FK499UY?
 \bbfbkbklqbr
 tyy}  zC  zC  DH  zI
 JP  QU  QZ  QZ  [`  Qa TYYv. 0>dii>V Y__c_h_hin_o q~  C  H  H  IU  V tyy2 4>dii	>R T\\`\e\efm\n DIIe, .4DIIe4D FK499UY? \bbfbkbklqbr tyy}  zC  zC  DH  zI JP  QU  QZ  QZ  [`  Qa TYYv. 0>dii>V Y__c_h_hin_o q~  C  H  H  IU  V tyy2 4>dii	>R T\\`\e\efm\n DIIe, .4DIIe4D FK499UY? \bbfbkbklqbr tyy}  zC  zC  DH  zI JP  QU  QZ  QZ  [`  Qa TYYv. 0>dii>V Y__c_h_hin_o q~  C  H  H  IU  V tyy2 4>dii	>R T\\`\e\efm\n DIIe, .4DIIe4D FK499UY? \bbfbkbklqbr tyy}  zC  zC  DH  zI JP  QU  QZ  QZ  [`  Qa TYYv. 0>dii>V Y__c_h_hin_o q~  C  H  H  IU  V  tyy2!  4>dii	>R!  T\\`\e\efm\n!" DIIe,#" .4DIIe4D#" FK499UY?#" \bbfbkbklqbr#" tyy}  zC  zC  DH  zI#" JP  QU  QZ  QZ  [`  Qa#$ TYYv.%$ 0>dii>V%$ Y__c_h_hin_o%$ q~  C  H  H  IU  V%& tyy2'& 4>dii	>R'& T\\`\e\efm\n'( DIIe,)( .4DIIe4D)( FK499UY?)( \bbfbkbklqbr)( tyy}  zC  zC  DH  zI)( JP  QU  QZ  QZ  [`  Qa)* TYYv.+* 0>dii>V+* Y__c_h_hin_o+* q~  C  H  H  IU  V+, $DIIm$<-, >J$))T_J`-, bkkoktktu}k~-, @E  FJ  FO  FO  PT  FU-, V]  ^b  ^g  ^g  hn  ^o-. $DIIm$</. >J$))T_J`/. bkkoktktu}k~/. @E  FJ  FO  FO  PT  FU/. V]  ^b  ^g  ^g  hn  ^o/0 $DIIm$<10 >J$))T_J`10 bkkoktktu}k~10 @E  FJ  FO  FO  PT  FU10 V]  ^b  ^g  ^g  hn  ^o12 $DIIm$<32 >J$))T_J`32 bkkoktktu}k~32 @E  FJ  FO  FO  PT  FU32 V]  ^b  ^g  ^g  hn  ^o34 $DIIm$<54 >J$))T_J`54 bkkoktktu}k~54 @E  FJ  FO  FO  PT  FU54 V]  ^b  ^g  ^g  hn  ^o56 $DIIm$<76 >J$))T_J`76 bkkoktktu}k~76 @E  FJ  FO  FO  PT  FU76 V]  ^b  ^g  ^g  hn  ^o78 $''98 #*$**98 6?t||98 MVVZVbVb98 dllr9: "+yen  {C;> "%IC :"',E%*CH & "- HbllC5.A#BQUV YY",,		{*CDSWXHYY",,		{*CDSWXHYY",,		{*CDSWXHYY",,		{*CDSWXHYY",,		{*CDSWXHYY",,		{*CDSWXH!A .B   { +*1/0, 	
 
	

	Psu   *}5A~<1~(~#-~#A~/A~9&&5
~	~~ #~,/~69 
c                 d   [         R                   " 5       n[        R                  " 5       U l        [        R                  " 5       U l        [
        R                  " SS5      n[        R                  " S5      n[        SU5        UR                  S/5      n[        SUR                  S    35        UR                  S   nSn[
        R                  " U[        U4S9n[        R                  " XE-  5      n[        S	U5        / S
Qn[        U5        UR                  U R                   U5      n	[#        U	6 u  p[%        ['        U
5      5       H  n[)        X   [*        5      (       a>  [        R,                  " U R                  [        R                  " X   /5      /SS9U l        O([        R,                  " U R                  X   /SS9U l        [)        X   [*        5      (       a?  [        R,                  " U R                  [        R                  " X   /5      /SS9U l        M  [        R,                  " U R                  X   /SS9U l        GM     U R                  R/                  [0        R2                  [0        R2                  * /S5      U l        U R                  R/                  [0        R2                  [0        R2                  * /S5      U l        [5        5       nUR7                  S5        UR7                  S5        UR9                  U R                  SSS5        UR9                  U R                  SSS5        [        SU R                  5        [        SU R                  5        UR;                  S5        UR9                  U R                  SSS5        [        S[         R                   " 5       U-
  5        g )Nrz   r   ./csv/2022.csvzread 2022.csv 300r   zformer qty = r   r   r   )r   r0   r/         r   i,  i^  Tr   	xg2022new	qs2022newr   z???zbdelete `xgallnew` from `xgallnew`,`xg2022new` where `xgallnew`.`stockcode`=`xg2022new`.`stockcode`r   r   )r   r   r   rk   rl   r   r   r   r   drop_duplicatesr   r   r   r   r   r   xg_2022_for_mpr   r   r   
isinstancedictr   r   r   r   r   r   r   execute_sql)r   r   r
   r   r   r   r   r   r   r   r   r   rz   r   s                 r   
xg_2022_mpOneqs.xg_2022_mp#  s   ))+	llnlln ((3"KK 12	!),++[M:	iooa0123#	WWYLG:NYYx12n\*/hxx++H5Ls1vA!$%% iiadV8L(M\`a ii(=DQ!$%% iiadV8L(M\`a ii(=DQ  --rvvw.?C--rvvw.?Cg$${;qA{;qAeDMM"eDMM"~z+a@ 	k499;y01r   c           
      j!   [         R                  " 5       n[         R                  " 5       n[         R                  " S5      n[        SU5        UR	                  S/5      nXAUS-    n[        SUR
                  S   5        UR                  5        H  u  pV[        US   5      S:  an  US   SS S	:X  d  US   SS S
:X  a  US   SS S-   US'   M?  US   SS S:X  a  US   SS S-   US'   M[  US   SS S:X  d  US   SS S:X  a  US   SS S-   US'   M  M  M     UR                  5        GH  u  pWUS   U l        [        R                  5          [        =R                  S-  sl        [        R                  nS S S 5        [        WU R                  5        U R                  SS  S:X  a  [        S5      U l        O[        S5      U l         U R                  R                  U R                  S5      u  U l        U l        U l        U l        U l        U l        U R(                  S   R+                  5       n	U R(                  S   R-                  5       n
U R$                  R
                  S   nU R$                  S   US-
     n X-
  X-
  S-  -  U l        U R.                  R1                  S5      U l        U R3                  5         U R5                  U R(                  U R                  S5      u  U l        U l        U l        U R5                  U R&                  U R                  S5      u  U l        U l        U l        U R5                  U R$                  U R                  S5      u  U l        U l        U l         U R5                  U R"                  U R                  S5      u  U l        U l!        U l"        U R5                  U R                   U R                  S5      u  U l        U l#        U l$        U R5                  U R                  U R                  S5      u  U l        U l%        U l&        U R$                  S   RO                  S5      RQ                  5       R1                  S 5      U R$                  S!'   U R$                  RS                  S"S#9U l         SnSn U R$                  S!   S$   U R$                  S!   S%   ::  a  SnOSnU R$                  S!   S%   n  U R$                  S   S%   U R$                  S!   S%   -
  U R$                  S   S%   -  S-  nUR1                  S'5      n U R$                  S)   S%   U R$                  S!   S%   -
  U R$                  S)   S%   -  S-  nUR1                  S'5      n U R$                  S*S  n[        UUS!   US   :     5      n U R$                  S+S  n[        UUS!   US   :     5      n[        U RT                  S   U RT                  S   U RT                  S   U RT                  S   U RT                  S   U RT                  S   5         0 S,U R                  SS _SU R                  _S-US.   _S/U RB                  S0   _S1U RB                  S2   _S3U RT                  S   _S4U RT                  S   _S5U RT                  S   _S6U RT                  S   _S7U RT                  S   _S8U RT                  S   _S9U R6                  S)   _S:U R:                  S)   _S;U R>                  S)   _S<U RB                  S)   _S=U RF                  S)   _S>U RJ                  S)   _0 S?U R6                  S@   _SAU R:                  S@   _SBU R>                  S@   _SCU RB                  S@   _SDU RF                  S@   _SEU RJ                  S@   _SFU R6                  SG   _SHU R6                  SI   _SJU R6                  SK   _SLU R6                  SM   _SNU R6                  SO   _SPU R6                  SQ   _SRU R6                  SS   _STU R6                  SU   _SVU R6                  SW   _SXU R6                  SY   _SZU R6                  S[   _E0 S\U R6                  S]   _S^U R6                  S_   _S`U R:                  SG   _SaU R:                  SI   _SbU R:                  SK   _ScU R:                  SM   _SdU R:                  SO   _SeU R:                  SQ   _SfU R:                  SS   _SgU R:                  SU   _ShU R:                  SW   _SiU R:                  SY   _SjU R:                  S[   _SkU R:                  S]   _SlU R6                  S_   _SmU R>                  SG   _SnU R>                  SI   _E0 SoU R>                  SK   _SpU R>                  SM   _SqU R>                  SO   _SrU R>                  SQ   _SsU R>                  SS   _StU R>                  SU   _SuU R>                  SW   _SvU R>                  SY   _SwU R>                  S[   _SxU R>                  S]   _SyU R>                  S_   _SzU RB                  SG   _S{U RB                  SI   _S|U RB                  SK   _S}U RB                  SM   _S~U RB                  SO   _SU RB                  SQ   _E0 SU RB                  SS   _SU RB                  SU   _SU RB                  SW   _SU RB                  SY   _SU RB                  S[   _SU RB                  S]   _SU RB                  S_   _SU RF                  SG   _SU RF                  SI   _SU RF                  SK   _SU RF                  SM   _SU RF                  SO   _SU RF                  SQ   _SU RF                  SS   _SU RF                  SU   _SU RF                  SW   _SU RF                  SY   _E0 SU RF                  S[   _SU RF                  S]   _SU RF                  S_   _SU RJ                  SG   _SU RJ                  SI   _SU RJ                  SK   _SU RJ                  SM   _SU RJ                  SO   _SU RJ                  SQ   _SU RJ                  SS   _SU RJ                  SU   _SU RJ                  SW   _SU RJ                  SY   _SU RJ                  S[   _SU RJ                  S]   _SU RJ                  S_   _SU R8                  S   _E0 SU R8                  S   _SU R8                  S   _SU R8                  S   _SU R8                  S   _SU R<                  S   _SU R<                  S   _SU R<                  S   _SU R<                  S   _SU R<                  S   _SU R@                  S   _SU R@                  S   _SU R@                  S   _SU R@                  S   _SU R@                  S   _SU RD                  S   _SU RD                  S   _SU RD                  S   _E0 SU RD                  S   _SU RD                  S   _SU RH                  S   _SU RH                  S   _SU RH                  S   _SU RH                  S   _SU RH                  S   _SU RL                  S   _SU RL                  S   _SU RL                  S   _SU RL                  S   _SU RL                  S   _SU R.                  _SU RV                  _SU RX                  _SU RZ                  _SU_EXUUUS.EnUR]                  5        H  u  nn US:  a  [1        U5      nUUU'   M  M!     [         R^                  " U[         R                  " U/5      /SS9n[         R^                  " U[         R                  " U R6                  /5      /SS9n[         R^                  " U[         R                  " U R:                  /5      /SS9n[         R^                  " U[         R                  " U R>                  /5      /SS9n[         R^                  " U[         R                  " U RB                  /5      /SS9n[         R^                  " U[         R                  " U RF                  /5      /SS9n[         R^                  " U[         R                  " U RJ                  /5      /SS9nU Ra                  5         GM
     X#4$ ! , (       d  f       GN= f!    GM'  = f!   [        S5         GN= f!   SnS&n GN= f!   S(n GNg= f!   S(n GN$= f!   Sn GN= f!   Sn G
N= f!    GM  = f!   [        S5         GN= f)Nrv  zread 2022.csv 353r      r   r   r   r   30r   z.SZ6z.SH84r   r   r   r   r   r   r/   r   r#   r$   r%   r&   r'   r(   r   r   r   r   r   r   r   r   r4   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r7   r   r8   r   r9   r   r:   r   r;   r   r<   r   r=   r   r>   r   r?   r   r@   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r  r  r  r  r  r  r  r  r	  r
  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r   r!  r"  r#  r$  r%  r&  r'  r(  r)  r*  r+  r,  r-  r.  r/  r0  r1  r2  r3  r4  r5  r6  r7  r8  r9  r:  r;  r<  r=  r>  r?  r@  rA  rB  rC  rD  rE  rF  rG  rH  rI  rJ  rK  rL  rM  rN  rO  rP  rQ  rR  rS  rT  rE   rF   rG   rH   rU  rV  r\  Tr   zerror!!!!!!!!!!!!!! line 497)1r   r   r   r   r{  r   r]  r   r   r	   r^  r_  r   r   r`  rV   rU   rT   rS   rR   rQ   ra  rb  rE   rc  rd  re  rW   r]   rX   r^   rY   r_   rZ   r`   r[   ra   r\   rb   rf  rg  rh  r6   rF   rG   rH   ri  r   r   )r   rj  rk   rl   r   rs   stockrk  rl  rm  rn  ro  rp  rU  rW  rX  rY  rq  r[  rZ  rr  rs  r_  s                          r   r|  Oneqs.xg_2022_for_mp]  s   KK 12	!),++[M:	ad#	mY__Q/0$--/KE5%&q(%a*C/53Ea3JC3O',['9!A'>u'DE+&;'!,c1',['9!A'>u'DE+&;'!,c1U;5G!5Lc5Q',['9!A'>u'DE+& 6R
  0 #++-IE{+DN  ((*$$)$ . 4 4 + -/~~bc"E)$QZ$QZ^b^j^j^l^lmqm{m{  }B  _C]T\$,t|DLQUQ] V$((*CU#'')C##A&D||G$T!V,B137C-0a( OO/3{{4<<Y`/a,DL49/3{{4<<Y_/`,DL49/3{{4<<Y^/_,DL49/3{{4<<Y^/_,DL49/3{{4<<Y]/^,DL49/3{{4<<Y]/^,DL49$(LL$9$A$A#$F$K$K$M$S$STU$VDLL!,,--W-=DL FI <<(,dll7.CB.GGFF"ll73B7I
  LL1"5W8Mb8QQSWS_S_`gShikSllorr
%++A.
<</3dll76KB6OOQUQ]Q]^dQefhQiiloo	#//!,	cd+x(9HW<M(MNOde,'):Xg=N)N OP	 $'''"4776?4775>$''%.QUQXQXY]Q^_c_f_fgk_lm0WT^^Aa0 T^^ KX[\bXc djkoktkt  vB  lC   DG  HL  HQ  HQ  RU  HV 4777+,1$''&/BGPUW\]a]d]dej]klqrvryryz~r AF  GK  GN  GN  OS  GTTYYv./6tyy7HIPQUQZQZ[aQbcjkoktktu{k| ~E  FJ  FO  FO  PV  FW X_  `d  `i  `i  jp  `q TYYv. 07tyy7H JQQUQZQZ[aQb dkkoktktu{k| ~E  FJ  FO  FO  PV  FW X_  `d  `i  `i  jp  `q tyy2	 4>dii	>R	 T\\`\e\efm\n	
 DIIe,
 .4DIIe4D
 FK499UY?
 \bbfbkbklqbr
 tyy}  zC  zC  DH  zI
 JP  QU  QZ  QZ  [`  Qa TYYv. 0>dii>V Y__c_h_hin_o q~  C  H  H  IU  V tyy2 4>dii	>R T\\`\e\efm\n DIIe, .4DIIe4D FK499UY? \bbfbkbklqbr tyy}  zC  zC  DH  zI JP  QU  QZ  QZ  [`  Qa TYYv. 0>dii>V Y__c_h_hin_o q~  C  H  H  IU  V tyy2 4>dii	>R T\\`\e\efm\n DIIe, .4DIIe4D FK499UY? \bbfbkbklqbr tyy}  zC  zC  DH  zI JP  QU  QZ  QZ  [`  Qa TYYv. 0>dii>V Y__c_h_hin_o q~  C  H  H  IU  V tyy2 4>dii	>R T\\`\e\efm\n DIIe, .4DIIe4D FK499UY? \bbfbkbklqbr tyy}  zC  zC  DH  zI JP  QU  QZ  QZ  [`  Qa TYYv. 0>dii>V Y__c_h_hin_o q~  C  H  H  IU  V  tyy2!  4>dii	>R!  T\\`\e\efm\n!" DIIe,#" .4DIIe4D#" FK499UY?#" \bbfbkbklqbr#" tyy}  zC  zC  DH  zI#" JP  QU  QZ  QZ  [`  Qa#$ TYYv.%$ 0>dii>V%$ Y__c_h_hin_o%$ q~  C  H  H  IU  V%& tyy2'& 4>dii	>R'& T\\`\e\efm\n'( DIIe,)( .4DIIe4D)( FK499UY?)( \bbfbkbklqbr)( tyy}  zC  zC  DH  zI)( JP  QU  QZ  QZ  [`  Qa)* TYYv.+* 0>dii>V+* Y__c_h_hin_o+* q~  C  H  H  IU  V+, $DIIm$<-, >J$))T_J`-, bkkoktktu}k~-, @E  FJ  FO  FO  PT  FU-, V]  ^b  ^g  ^g  hn  ^o-. $DIIm$</. >J$))T_J`/. bkkoktktu}k~/. @E  FJ  FO  FO  PT  FU/. V]  ^b  ^g  ^g  hn  ^o/0 $DIIm$<10 >J$))T_J`10 bkkoktktu}k~10 @E  FJ  FO  FO  PT  FU10 V]  ^b  ^g  ^g  hn  ^o12 $DIIm$<32 >J$))T_J`32 bkkoktktu}k~32 @E  FJ  FO  FO  PT  FU32 V]  ^b  ^g  ^g  hn  ^o34 $DIIm$<54 >J$))T_J`54 bkkoktktu}k~54 @E  FJ  FO  FO  PT  FU54 V]  ^b  ^g  ^g  hn  ^o56 $DIIm$<76 >J$))T_J`76 bkkoktktu}k~76 @E  FJ  FO  FO  PT  FU76 V]  ^b  ^g  ^g  hn  ^o78 $''98 #*$**98 6?t||98 MVVZVbVb98 dllr9: "+yen  {C;> "%IC :"',E%*CH & "- HbllC5.A#BQUV YY",,		{*CDSWXHYY",,		{*CDSWXHYY",,		{*CDSWXHYY",,		{*CDSWXHYY",,		{*CDSWXHYY",,		{*CDSWXH![ .\   U +*1/08 	
 
	

	T
45s   *A@7	AAA	=1AA(AA%/AA%AAA1AAA;&AB&ABbAB"AB)2AB"@7
AA	A	AAAAA"A%AA.A1AA8A;ABBABBABBABBAB"B"AB2c                 *   [         R                  " 5       n[         R                  " 5       nU R                  R                  5        H  u  p4SUR                  ;   d  SUR
                  ;   a,  [         R                  " U[         R                  " U/5      /SS9nSUR
                  ;   d  SUR
                  ;   d  Ms  [         R                  " U[         R                  " U/5      /SS9nM     [        S5        [        U5        [        S5        [        U5        g )Nz-1abcTr   z-1a-2zday -1abc and m30 -1abczm30 -1a or m30 -2:)r   r   rk   r]  r%   r&   r   r   )r   newlistnewlisttrs  r  s        r   xg_2022_after_mpOneqs.xg_2022_after_mp  s    //1IC%))#w%))';		7BLL%,A"BQUV		!TUYY%6HbllE7.C#DSWX	 2
 	'(g"#hr   c                 $   U R                  U R                  5      U l        U R                  U R                  5      U l        U R                  U R                  5      U l        U R                  U R                  5      U l        U R                  U R
                  5      U l        U R                  U R                  5      U l        U R                  R                  S   nUS:  a  U R                  n[        X"S   US   :     R                  S   U-  S-  5      U l	        [        X"S   US   -   S-  US   :     R                  S   U-  S-  5      U l
        US   US-
     US   US-
     :  d  US   US	-
     US   US	-
     :  a  S	U l        g SU l        g g )
Nr   <   r   r   r/   r   r4   r3   r   )cal_ma_KrQ   rR   rS   rT   rU   rV   r   intrF   rG   rH   )r   ttlkmdfs      r   rd  Oneqs.cal_ma_all  sp   }}T\\2}}T\\2}}T\\2}}T\\2}}T\\2}}T\\2ll  #8||BR5	BvJ 67==a@FsJKDJRFBuI!5q 8F CDJJ1MeSTWWXDL&z%'"RZa%88BvJuQw<ORTU[R\]bcd]dRe<e r   c                 \   US   R                  S5      R                  5       R                  S5      US'   US   R                  S5      R                  5       R                  S5      US'   US   R                  S5      R                  5       R                  S5      US'   UR                  S	S
9nU$ )Nr   r3   r   ma5r2   r   r  r   r   r   )rf  rg  rc  rh  )r   kdatas     r   r  Oneqs.cal_ma_K)  s    g..q1668>>qAeg..r2779??Bfg..r2779??Bf,,g,6r   c                     0 UEUEnU$ r    )r   dict1dict2ress       r   __MergeOneqs.__Merge0  s      % 
r   c                    SUS'   SUS'   SUS'   SUS'   [        SUS-
  5       GH  nSnUS	   U   US	   US
-
     ::  a  US	   U   US	   US
-      :  a  [        S5       HI  nUS   X5-      US   X5-      -   S-  US	   X5-      :  d  M)  US	   X5-      US	   X5-   S
-      :  d  MD  US
-   nMK     US:  a  SUS   U'   XS-   US-    nXfS   US	   :     R                  S   S:  a
  SUS   U'   M  M  US	   U   US	   US
-
     :  d  M  US	   U   US	   US
-      :  d  M  [        S5       HI  nUS   X5-      US   X5-      -   S-  US	   X5-      :  d  M)  US	   X5-      US	   X5-   S
-      :  d  MD  US
-   nMK     US:  a  S
US   U'   XS-   US-    nXfS   US	   :     R                  S   S:  d  GM  S
US   U'   GM     [        SS5       H  nX#-
  nUS	   U   US	   US
-
     ::  a7  US	   U   US	   US
-      :  a"  US   US
-      US	   US
-      :  a
  SUS   U'     OTUS	   U   US	   US
-
     :  d  Mj  US	   U   US	   US
-      :  d  M  US   US
-      US	   US
-      :  d  M  S
US   U'     O   [        SU5       H  nUS   U   S
:X  a`  [        US
-   U5       HK  nUS   U   S:X  a  US
-
  n  M5  US   U   S
:X  d  M%  US   U   US   U   :  a  SUS   U'   UnMC  SUS   U'   MM     Mo  US   U   S:X  d  M}  [        US
-   U5       HK  nUS   U   S
:X  a  US
-
  n  M  US   U   S:X  d  M%  US   U   US   U   :  a  SUS   U'   UnMC  SUS   U'   MM     M     U$ )Nr   kkllkkllxr"   kkllvkkllxvr  r2   r   r   r   r   r   r4   r   r         )r   r   )r   r  ro  rz   	bcheckttlr`  tmpkjs           r   cal_qs_KaiLuoOneqs.cal_qs_KaiLuo4  s    fgghr4"9%AIV}Q5=Q#77E&M!<LuU[}]^ab]bOc<cqAfae,uU|AE/BBaG%PV-XYX]J^^ %fae 4uV}QUQY7O O$-M	 " >b5=#3Q3qs^eT&\1399!<a?%'E&M!$ @ vq!U6]1q5%99eFmA>NQVW]Q^_`cd_dQe>eqAfae,uU|AE/BBaG%PV-XYX]J^^ %fae 4uV}QUQY7O O$-M	 " >a5=#3Q3qs^fd6l24::1=q@%&E&M!$1 &6 q"AAfa E&M!a%$88U6]1=MPUV\P]^_bc^cPd=dinouivwx{|w|i}  @E  FL  @M  NO  RS  NS  @T  jT#%fa -"eFmAE&::uV}Q?ORWX^R_`ade`eRf?fkpqvkwxy|}x}k~  AF  GM  AN  OP  ST  OT  AU  lU#$fa   r4AV}Q1$q1ud+AV}Q'2-EV}Q'1, =+eFmA.>>/0E&M!, !A/0E&M!, , vq!R'q1ud+AV}Q'1,EV}Q'2- <?U5\!_</0E&M!, !A/0E&M!, , !. r   c                 T   [        US-
  SS5       GH  nUS   U   S:X  ay  US   U   nSn[        US-
  SS5       H[  nUS   U   S:X  d  US:X  d  M  [        US-
  US5       H  nUS   U   U::  d  M  X7-
  nUS   U   nM     SUS   X5-
  '   XAS	   X5-
  '     O   US   U   S:X  d  M  US
   U   nSn	[        US-
  SS5       H]  nUS   U   S:X  d  US:X  d  M  [        US-
  US5       H  nUS
   U   U:  d  M  X7-
  n	US
   U   nM     SUS   X9-
  '   XS	   X9-
  '     GM     GM     U$ )Nr   r  r   r  r   r   r   r  r  r   r4   )r   )
r   r  ro  rz   LLdisLLr  r`  HHdisHHs
             r   cal_qs_GGDDOneqs.cal_qs_GGDDz  s    taxR(AV}Q2%5\!_q1ub"-AV}Q'1,Q!&q1ua!4A$U|A"4()%*5\!_ "5 57gqy157h	2 . V}Q1$6]1%q1ub"-AV}Q'2-a!&q1ua!4A$V}Q/25()%*6]1%5 "5 56gqy157h	2 .% )6 r   c                    [        U5       H  nUS   U   S:X  a\  SnSn[        X25       HI  nXAS   U   US   U   -  -   nXQS   U   -   nUS   U   S:X  d  M.  UnUS:X  a	  SUS   U'   O
XE-  US   U'     O   US   U   S	:X  d  My  SnSn[        X25       HJ  nXAS   U   US   U   -  -   nXQS   U   -   nUS   U   S
:X  d  M.  UnUS:X  a	  SUS   U'   O
XE-  US   U'     M     M     US   R                  S5      US'   US   R                  S5      US'   US   R                  S5      US'   US   R                  S5      US'    U$ )Nr  r4   r   r   volr  r   r  r   r   r   r  )r   rc  )r   r  ro  rz   TTLaTTLvr  s          r   cal_qs_kkllvOneqs.cal_qs_kkllv  s   tAW~a A%qA."3eEl1o"EED,q/1DV}Q'1,1901E'N1-04E'N1- ( W~a B&qA."3eEl1o"EED,q/1DV}Q'2-1901E'N1-04E'N1- (' > f++A.fw--a0gw--a0g///2h	 r   c                    S=p4S=pV[        US-
  SS5       H  nUS   U   S:X  aE  Un[        US-
  SS5       H-  nUS   U   S:X  a  US   U   nUS   U   S:X  d  M%  US   U   n  O     OUUS   U   S	:X  d  Mb  Un[        US-
  SS5       H-  nUS   U   S:X  a  US   U   nUS   U   S	:X  d  M%  US   U   n  O     O   X0R                  S
'   X@R                  S'   X`R                  S'   XPR                  S'   U$ )Nr   r   r   r  r   r  r  r  r4   r7   r8   rC   rD   )r   rP   )	r   r  ro  r7   r8   rD   rC   rz   r  s	            r   cal_qs_QSmodule_NDGNKLOneqs.cal_qs_QSmodule_NDGNKL  sD   	taxR(AW~a B&q1ub"-AV}Q'2-#GnQ/W~a(B.#Hoa0 . w"a'E"1q5"b1 =+q0"'."3C >!,1"'/!"4C! 2 ' )( !e e$g$gr   c                 ^   S=n=n=n=n=px[        US-
  SS5       H$  n	US   U	   S:X  d  M  US   U	   US'   US   U	   n  O   UR                  S   n
U
S:X  a  SUS'   [        US-
  SS5       H$  n	US	   U	   S:X  d  M  US
   U	   US'   US
   U	   n  O   UW	-
  nUR                  S   n
U
S:X  a  SUS'   [        US-
  SS5       H$  n	US   U	   S:X  d  M  US   U	   US'   US   U	   n  O   UR                  S   n
U
S:X  a  SUS'   [        US-
  SS5       H$  n	US	   U	   S:X  d  M  US
   U	   US'   US
   U	   n  O   X)-
  nUR                  S   n
U
S:X  a  SUS'   Xx:  a  SnOSnXR                  S'   X0R                  S'   X@R                  S'   XPR                  S'   X`R                  S'   U$ )Nr   r   r   r  r   r  r9      r  r  r:      r4   r;      r<      r6   )r   r   rP   )r   r  ro  r9   r:   r;   r<   KaidayLuodayrz   addedr6   s               r   cal_qs_QSmodule_QSDDKaiGGLuo"Oneqs.cal_qs_QSmodule_QSDDKaiGGLuo  s'   $%%%3%r%#%ftaxR(AW~a B&!(OA.d8_Q' ) AB;E$KtaxR(AV}Q2%"7^A.eGnQ' ) AB;E%LtaxR(AW~a A%!(OA.d8_Q' ) AB;E$KtaxR(AV}Q1$"7^A.eGnQ' ) AB;E%LBBdd ed er   c                    U R                   S   nU R                   S   nU R                   S   nU R                   S   nU R                   S   n	U R                   S   n
U R                   S   nSnS	nS	nS	nS
nS	nS
nS
nUS   S   nS	nS	nS	nS	nS	nS	nS	n[        US-
  SS5       GH  nUUS-
  :X  a  US   U   nUS   U   nUnUnUS   U   W:  a
  US   U   nUnUS   U   W:  a
  US   U   nUnUS   U   S:X  Ga3  UnUnUn US	:w  a  UU-  S-  S-
  R                  S5      nOS	n[        US-
  U S5       H  n!US   U!   US   U!   :  d  M  US   U!   nU!n[        U!U S5       H  n"US   U"   U:  d  M  US   U"   nU"nM     US   U   n[        UUS5       H#  n"US   U"   U:  d  M  US   U"   nUS   U"   nU"nM%       O   [        US-
  US5       H:  n!U!US-
  :X  a  US   U!   nUS   U!   nUS   U!   U:  d  M*  US   U!   nUS   U!   nM<     US	:X  a  US   US-
     nUS   US-
     n  GO:US   U   S:X  d  GM  UnUnUn#U
U-  S-  S-
  R                  S5      n[        US-
  U#S5       H  n!US   U!   US   U!   :  d  M  US   U!   nU!n[        U!U#S5       H  n"US   U"   U:  d  M  US   U"   nU"nM     US   U   n[        UUS5       H#  n"US   U"   U:  d  M  US   U"   nUS   U"   nU"nM%       O   [        US-
  US5       H:  n!U!US-
  :X  a  US   U!   nUS   U!   nUS   U!   U:  d  M*  US   U!   nUS   U!   nM<     US	:X  a  US   US-
     nUS   US-
     n  O   U
U-  S-  S-
  R                  S5      nUS	:w  a  UU-  S-  S-
  R                  S5      nOSnUS-   US-   -  S-  S-
  R                  S5      nUU	S-  :  d	  UUS-  :  a  Sn$OS	n$U	S	:X  d  US	:X  d  US	:X  d  U
S	:X  a  Sn%OS	n%US	:w  a  X-  S-  S-
  R                  S5      n&OS	n&[        R                  R	                  [        R                  R                  5       S5      n' UR                  S5      nUR                  S5      n0 SX-   _SU_SU_SU_SU_SU_SU_SU	_SU
_SU_SU_SU_SU_S U_S!U&_S"U$_S#U_US$   S   R                  S%5      US&   S   R                  S%5      US   S   R                  S%5      UUS$   S   -  S-  S-
  R                  S5      UUS&   S   -  S-  S-
  R                  S5      UUS   S   -  S-  S-
  R                  S5      UUU'UUUUS'.En(X-   UUU'S(.n)UU R                   S)'   UU R                   S*'   UU R                   S'   UU R                   S+'   UU R                   S,'   UU R                   S-'   UU(4$ !    GNL= f).Nr7   r8   r9   r:   r;   r<   r6    r   r"   r   r   r   r   r   r  r/   r   g     8@g)\(?gGz?z%m-%d %H:%Mr4   coder   rI   r   r   r   PLPr?   CHLPr   
outofrange
QSabnormalr  r   r   r  r   r   ma5Pma10Pma30P
periodSuggr@   r   r7   r8   r=   r>   )r  r   rI   r   r=   r>   r@   rA   rB   )rP   r   rc  datetimestrftimenow)*r   r   r  ro  rI   r7   r8   r9   r:   r;   r<   r6   periodsuggestionr   r   r  r?   r  r@   rB   
closepricer=   r>   rA   DDCGorGGCD1locationCHL1locationHHHlocationLLLlocationrz   HHHLLLCHLlocationLuolocationr`  r)   Kailocationr  r  r   
revisetimeperiodQSperiodQStimes*                                             r   cal_qs_QSmodule_CHL1andCHL Oneqs.cal_qs_QSmodule_CHL1andCHL  s   MM% MM% ==MM% ==MM% == 
7^B'
 taxR(AD1H}FmA&El1oV}Q#%FmA&U|A$El1oV}Q1$'!8#IOc188;D D {1}[<AV}Q'fa(88"5\!_%&!&qR!8A$U|At3%*5\!_-. "9 %*&M,$?!&|K!BA$V}Q/;,1&M!,<05fa0@45 3	 "C
  =  taxb9AD1H}%*6]1%5
).vq)9V}Q'*4%*6]1%5
).vq)9 : ?!&vtax!8J%*6]4!8%<NV}Q2%'c	C#-44Q7 {1}[<AU|AuV}Q'77"6]1-%&!&qR!8A$V}Q/4%*6]1%5-. "9 %*%L$>!&|K!BA$U|A{:,1%LO05fa0@45 3	 "C
  =  taxb9AD1H}%*5\!_
).vq)9U|A3%*5\!_
).vq)9 : ?!&udQh!7J%*6]4!8%<Nw )z #c)C/66q9!8#%+c188;EE#%#+.4s:AA!DT	!Z"t)%;JJ7bAgSAXJJ!8i#o+2215FF&&//0A0A0E0E0GW
			!CAD
FI$6 IF J B	
 B C B C G E C C D F !J  !N!" %*%L$4$:$:1$=$)&M"$5$;$;A$>$)&M"$5$;$;A$>%/%,r2B%BS%H3%N$U$UVW$X%/%-2C%Cc%IC%O$V$VWX$Y%/%-2C%Cc%IC%O$V$VWX$Y$4$.$."%"%$($/;B &/%5%.%+ #- #f%0m$ e$.l#)8'((6&'X~q	s   "W   Wc                 T   U R                   S   nU R                   S   nU R                   S   nU R                   S   nU R                   S   nU R                   S   n	U R                   S   n
U R                   S   nU R                   S	   nU R                   S
   nU R                   S   nU R                   S   nU R                   S   nUS   US-
     nSnSnSU R                  U'   US:w  GaW  X-  SU R                  U   -   :  a  Sn[        X5      n[	        X5      nUS:X  d  US:X  a  UnUUSU R
                  U   -
  -  :  aQ  UUSU R
                  U   -   -  :  a8  SnU
S:X  a  U R                  U==   S-  ss'   OU R                  U==   S-  ss'   OU
S:X  a  U R                  U==   S-  ss'   OU R                  U==   S-  ss'   OyUUSU R
                  U   -   -  :  a  U R                  U==   S-  ss'   OHUUSU R
                  U   -
  -  :  a  U R                  U==   S-  ss'   OU R                  U==   S-  ss'   U
S:X  Ga  [        X5      USU R
                  U   -   -  :  a  U R                  U==   S-  ss'   SnSnUU:  a  UU-  S:w  a  SnX:  a
  X-  S:w  a  SnU(       d  U(       a  U R                  U==   S-  ss'   US:  a4  X:  a/  XSU R
                  U   -   -  :  a  U R                  U==   S-  ss'   USS  nUS   R                  5       US   US-
     -   n[        US -  S!5      n UUS"   S#   :  a  U R                  U==   S$-  ss'   GO	U
S:X  Ga  [        X5      U	SU R
                  U   -
  -  :  a  U R                  U==   S-  ss'   SnSnUU:  a  SnX:  a  SnU(       d  U(       a  U R                  U==   S-  ss'   US:  a4  X:  a/  XSU R
                  U   -
  -  :  a  U R                  U==   S-  ss'   USS  nUS   R                  5       US   US-
     -   n[        US -  S!5      n UUS"   S#   ::  a  U R                  U==   S$-  ss'   U R                  S'S  n [        S(S S5       Hm  nUR                  U   UR                  US-
     -  S):  d  M+  UR                  US-
     UR                  US(-
     -  S):  d  MV  U R                  U==   S*-  ss'     O   [        S(S S5       Hm  nUR                  U   UR                  US-
     -  S+:  d  M+  UR                  US-
     UR                  US(-
     -  S+:  d  MV  U R                  U==   S,-  ss'     g    g !   [        S%5         GN= f!   [        S&5         GN0= f!   [        S-5         g = f).Nr7   r8   r9   r:   r;   r<   r6   r=   r?   r>   rA   r@   rB   r   r   Fr5   r   Tr   -1+1r  +2z+0z-0z=0r   r   r   ir  r  r   r   r+   zerror!!!!!!!!!!!!!! line 1093zerror!!!!!!!!!!!!!! line 1126r   r4   gHzG?z+egq=
ףp?z-ezerror!!!!!!!!!!!!!! line 1141)rP   r6   rN   rb  ra  rM   sumrc  r   rS   r   r   )r   r  ro  rI   r7   r8   r9   r:   r;   r<   r6   r=   r?   r>   rA   r@   rB   r  	goodspaceinsidespaceminchlmaxchlDoGfinishJGDoG1finishJGr  newma30r  rz   s                               r   cal_qs_QSmessageOneqs.cal_qs_QSmessage  s   MM% MM% ==MM% ==MM% ==]]6"MM% MM-0&78==.
}}%56>$q&)
	
 6w$**V,,-	 3}3}6T1WVf "aV 4455&Qt||TZG[E[A\:\ $K2v--2v-- b!DLL$8"899GGFOT)O!"aV(<&<"==--r6 3}S!DLL$8"899$ KL.(Z-F-I *{/JA/M!l$ Av#(t4<<3G1G,H'H$stDM%%'gtAv(>>G'"*Q'GDL,,GGFOS(O U
 3}S!DLL$8"899$ KL.( *!l$ Av#(t4<<3G1G,H'H$stDM%%'gtAv(>>G'"*Q'GDL,,GGFOS(O
 <<	1R]88A;rxx!},T1bhhqsmBHHQqSM6QRV6VGGFOT)O # 1R]88A;rxx!},T1bhhqsmBHHQqSM6QRV6VGGFOT)O #Y56>56	12sC   7#U2 #V 54V -'V AV +'V V /V 2VVV'c                 ~   US   nUS   nUS   nUS   nU R                   S   n	U R                   S   n
US   n SUS	'   SUS
'   SUS'   SUS'   SnSnSnSnSnSnSnSnSnSnSn[        US-
  SS5       GH2  nUS   U   S:X  Ga  US   U   US   U   -  nUn[        UUS-
  S5       H   nUS   U   US   U   -  nUU:  d  M  UnUnM"     SUS	   U'   SUS   U'   US   U   US   U'   UUS-
  :X  a    GO[        US-   US-
  S5       Hn  nUS   U   US   US-
     :  d  M  US   U   nUS   U   n[        US-   US-
  S5       H-  nUUS   U   :  a  Un  MQ  UUS   U   :  d  M"  SUS	   U'   Un  Ml     Mp     [        UUS-
  S5       Hp  nUS	   U   S:X  d  M  US   U   nUnSn[        US-   US-
  S5       H)  nUS   U   U:  a
  US   U   nUnUS	   U   S:X  d  M'  Un  O   UUS-
  :w  d  Mh  SUS
   U'   Mr     [        UUS-
  S5       GH  nUS
   U   S:X  d  M  [        US   U   US   U   -
  5      n[        US   U   US   U   -
  5      n US   U   US   U   :  d  MZ  U S-  U:  d  Me  SUS
   U'   Sn![        UUS-
  S5       H  nUS	   U   S:X  d  M  Un"U!S-   n!  O   [        USS5       H  nUS	   U   S:X  d  M  Un#U!S-   n!  O   U!S:X  d  M  US   W"   US   W#   ::  a"  US	   U#   S:w  a   SUS   U#'   M  SUS	   U"'   GM   SUS	   U"'   GM     [        US-   US-
  S5       GHK  nUS
   U   S:w  d  M  [        US   U   US   U   -
  5      n$[        US   U   US   U   -
  5      n[        US   U   US   U   -
  5      n US   U   US   U   :  d	  U$US-  :  a`  SUS   U'   SnXVS-  :  a  SnUS   U   US   U'   [        UUS-
  S5       H(  nUS	   U   S:X  d  M  SUS   U'   US   U   US   U'     M     M  US   U   US   U   :  d  UU S-  :  d  M  SUS   U'   US   U   US   U'   [        UUS-
  S5       H)  nUS	   U   S:X  d  M  SUS   U'   US   U   US   U'     GMI     GMN     [        UUS-
  S5       H  nUS	   U   S:X  d  M  [        US-   US-
  S5       HZ  nUS
   U   S:X  a    M6  US	   U   S:X  d  M   US   U   S:w  a&  US   U   US   U   :  a
  SUS	   U'   MH  SUS	   U'   MR  SUS	   U'   M\     M     [        US-
  US-
  S5       GHU  nUS   U   n%U%S:w  d  M  [        R                  " SU SU% 35        U%S:X  a0  US   US-
     US   U   :  a  SnUS   US-
     nOSnUS   US-
     nU%S:X  a0  US   US-
     US   U   :  a  SnUS   US-
     nOSnUS   US-
     nU%S:X  a0  US   US-
     US   U   :  a  SnUS   US-
     nOSnUS   US-
     nU%S:X  a0  US   US-
     US   U   :  a  SnUS   US-
     nOSnUS   US-
     nU%S:X  a0  US   US-
     US   U   :  a  S nUS   US-
     nOSnUS   US-
     nUUS   US-
  '   UUS   US-
  '   U%n  O   [        XS-
  S5       H`  nUS   U   S:X  d  M  UR
                  U	U2S!4   R                  5       n&UR
                  UUS-
  2S!4   R                  5       n'U'U&:  d  M^  SnMb     [        US-
  US-
  S5       H  nUS   U   S:X  d  US   U   S:X  d  US   U   S:X  d  M)  [        US-
  US-
  S5       HA  nUS   U   S:X  d  US   U   S:X  d  US   U   S:X  d  M)  US   U   US   U   :  a  Sn  OSn  O     O     GOUS   U   S":X  d  GM+  US   U   US   U   -  nUn[        UUS-
  S5       H   nUS   U   US   U   -  n(U(U:  d  M  UnU(nM"     SUS
   U'   S#US   U'   US   U   US   U'   UUS-
  :X  a    GO[        US-   US-
  S5       Hn  nUS   U   US   US-
     :  d  M  US   U   n)US   U   n*[        US-   US-
  S5       H-  nU*US   U   :  a  Un  MQ  U)US   U   :  d  M"  SUS
   U'   Un  Ml     Mp     Sn[        UUS-
  S5       Hn  nUS
   U   S:X  d  M  US   U   n+Un,[        US-   US-
  S5       H)  nUS   U   U+:  a
  US   U   n+Un,US
   U   S:X  d  M'  Un  O   UUS-
  :w  d  Mf  SUS	   U,'   Mp     [        UUS-
  S5       GH$  nUS	   U   S:X  d  M  [        US   U   US   U   -
  5      n-[        US   U   US   U   -
  5      n.US   U   US   U   :  d  MZ  U.S-  U-:  d  Me  SUS	   U'   Sn![        UUS-
  S5       H  nUS
   U   S:X  d  M  Un/U!S-   n!  O   [        USS5       H  nUS
   U   S:X  d  M  Un0U!S-   n!  O   U!S:X  d  M  [        R                  " S$W0 S%W/ 35        US   U/   US   U0   :  a"  US   U0   S#:w  a  SUS
   U0'   GM  SUS
   U/'   GM  SUS
   U/'   GM'     [        US-   US-
  S5       GHK  nUS	   U   S:w  d  M  [        US   U   US   U   -
  5      n1[        US   U   US   U   -
  5      n-[        US   U   US   U   -
  5      n.US   U   US   U   :  d	  U1U-S-  :  a`  S&US   U'   SnXWS-  :  a  Sn2US   U   US   U'   [        UUS-
  S5       H(  nUS
   U   S:X  d  M  S'US   U'   US   U   US   U'     M     M  US   U   US   U   :  d  U-U.S-  :  d  M  S(US   U'   US   U   US   U'   [        UUS-
  S5       H)  nUS
   U   S:X  d  M  S)US   U'   US   U   US   U'     GMI     GMN     [        UUS-
  S5       H  nUS
   U   S:X  d  M  [        US-   US-
  S5       HZ  nUS	   U   S:X  a    M6  US
   U   S:X  d  M   US   U   S#:w  a&  US   U   US   U   :  a
  SUS
   U'   MH  SUS
   U'   MR  SUS
   U'   M\     M     [        US-
  US-
  S5       GH9  nUS   U   n%U%S:w  d  M  U%S#:X  a0  US   US-
     US   U   :  a  S(nUS   US-
     nOS#nUS   US-
     nU%S(:X  a0  US   US-
     US   U   :  a  S)nUS   US-
     nOS(nUS   US-
     nU%S):X  a0  US   US-
     US   U   :  a  S&nUS   US-
     nOS)nUS   US-
     nU%S&:X  a0  US   US-
     US   U   :  a  S'nUS   US-
     nOS&nUS   US-
     nU%S':X  a0  US   US-
     US   U   :  a  S*nUS   US-
     nOS'nUS   US-
     nUUS   US-
  '   UUS   US-
  '   U%n  O   [        XS-
  S5       H`  nUS   U   S&:X  d  M  UR
                  U
U2S4   R                  5       n3UR
                  UUS-
  2S4   R                  5       n4U4U3:  d  M^  SnMb     [        US-
  US-
  S5       H  nUS   U   S#:X  d  US   U   S):X  d  US   U   S':X  d  M)  [        US-
  US-
  S5       HA  nUS   U   S#:X  d  US   U   S):X  d  US   U   S':X  d  M)  US   U   US   U   :  a  Sn  OSn  O     O     O   UUUUUS+.n5UU54$ !    GM  = f),u   
DD -2
Kai -1
GG 2
Luo 1
从后向前找，如果第一个找到-2，即当前在上涨趋势中
1，下跌趋势中找底分型，
2，两个底分型之间找最高点（或碰MA10或MA30的点）
r?   r:   r<   r6   rC   rD   r   r"   JGVFXJGAFXr  rO   JGVr   r   r   r  r4   r   r   r  r   r   r  zJGVFX 9g?r  7r  z-i am here 01r   r   1zlastAFX is z ||| nextAFX is r  52r  06r3  r5  r7  r9  r;  )rP   r   abslogginginfoilocrb  ra  )6r   r  ro  rI   r  r?   r:   r<   r6   rC   rD   r  r7  KJdoner;  r9  r3  r5  
CurrentJGVminlpercentminllocationmaxhpercentmaxhlocationrz   r  minlpercentnewlowhighlowlowr`  currentHighcurrentHighLocation	high2ma10high2ma5comp_OKnextVFXlastVFX	high2ma30lastFXis	lowbeforelowaftermaxhpercentnewhighlowhighhigh
currentLowcurrentLowLocationlow2ma10low2ma5nextAFXlastAFXlow2ma30XDKJ
highbefore	highafterperiodJGs6                                                         r   cal_jg_JGmoduleOneqs.cal_jg_JGmodule|  s    uououod^mmG$mmG$l+
	 ggde	
taxR(AW~a A%#El1ouV}Q/?? q$'1-A$)%LOU6]15E$EN%{2'(%3	 . 02g|-,/dL)-25\,-Ge\*4!8+U |Qa;AU|AeQT(::!&vq!1 %eQ!&q!tT1Wa!8A%uU|A6"# %&uV}Q'7746gq 1"# % "9	 < |DF15Agq)2-$)&M!$4,-+!&qs46!!4A$V}Q/;,1&M!,<45 3$W~a0"4"# % "5 d1f9@AE'N+>? 6( |DF15AW~a(!+#&uV}Q'7fa8H'H#I	!$U5\!_U6^Q5G%G!H =+U6]1-==$,QJy$801E'N1- %&G&+Ad1fQ&7#('?1#5r#9,-G,3AIG$)	 '8 &+1R^#(>!#4b#8,-G,3AIG$)	 &4  'z#(<#8%,w:O#O',W~g'>'C)1EFE(OG,D
 BCgw(?<=E'N7$;E 6J |A~d1fQ7AW~a(!+$'vq(9E&M!<L(L$M	$'fa(85=;K(K$L	#&uU|Avq9I'I#J =+E&M!,<<	)TU+@U+.E$KN#$F"s7{'(.3FmA.>E%LO%*1T!VA%6#(>!#4b#836E$KN6;El1oE%LO$)	 &7  %V}Q/fa0@@IhWXjDX/2dA38=3Cea 0).qa):A',W~a'82'=9<dA:?,q/eQ(-	 *;+ 86 |TAXq9AW~a(",!&qsDF1!5A$W~a0!3 %$W~a0"4#(;q>3#6',U|AuU|A'F:;gq(9:;gq(989E'N1$5 "6 : tAv|A~r:A"4[^H}{6(!H:%FG#s?$V}T!V4U6]15EE,/	-26]4!8-D
+.	+0<Q+?
#s?$U|DF3E%LOC,/	-25\$(-C
+.	+0=a+@
#s?$V}T!V4U6]15EE,/	-26]4!8-D
+.	+0<Q+?
#s?$U|DF3E%LOC,/	-25\$(-C
+.	+0=a+@
#s?$V}T!V4U6]15EE+/	-26]4!8-D
+.	+0<Q+?
,5dDF+/9eT!V,$,U ;Z u!VA.AT{1~s*%*ZZa
%;%?%?%A	&+jj461&=&A&A&C#I-!r	 / tAvl1nR8AT{1~,dA#0EPTVW\_I_!&qs\!^b!BA$T{1~4dA8KuUY{[\~_bOb#(<?5%=3C#C)*D$))+D$) "C  9 W~a B& $FmA.fa0@@ q$'1-A$)&M!$4eFmA6F$FN%3'(%3	 . 01g|-,/dL)-26]<-He\*4!8+U |Qa;AV}Q'vq!t)<<!&ua"'-"2!&q!tT1Wa!8A'vq)99"# %&uU|A645gq 1"# % "9	 < |DF15Agq)1,#(<?
+,*!&qs46!!4A$U|Az9+0<?
34 2$W~a0!3"# % "5 d1f9?AE'N+=> 6, |DF15AW~a(","%eFmA&6uU|A&F"G #E%LOE%M14E$E F <?E&M!,<<$+AIh$601E'N1- %&G&+Ad1fQ&7#('?1#5q#8,-G,3AIG$)	 '8 &+1R^#(>!#4a#7,-G,3AIG$)	 &4  'z '{7)CST[S\-] ^#(=#95=;Q#Q',T{7';S'@@Agw(?ABgw(?<=E'N7$;A 6T |A~d1fQ7AW~a(!+#&uf~a'85<?'J#K#&uV}Q'7%,q/'I#J"%eEl1oeQ&G"H <?5=+;;xQR
?R+.E$KN#$F"s7{%&.3El1oE%LO%*1T!VA%6#(>!#4a#736E$KN6;FmA6FE%LO$)	 &7  %U|AuV}Q/??8GTUICU/2dA27,q/eQ).qa):A',W~a'81'<9<dA:?-:JeQ(-	 *;+ 86 |TAXq9AW~a(!+!&qsDF1!5A$W~a0"4 %$W~a0!3#(;q>3#6',V}Q'7fa8H'H:;gq(9:;gq(989E'N1$5 "6 :" tAv|A~r:A"4[^H}#s?$U|DF3E%LOC,/	-25\$(-C
+.	+0=a+@
#s?$V}T!V4U6]15EE,/	-26]4!8-D
+.	+0<Q+?
#s?$U|DF3E%LOC,/	-25\$(-C
+.	+0=a+@
#s?$V}T!V4U6]15EE,/	-25\$(-C
+.	+0<Q+?
#s?$U|DF3E%LOC,0	-25\$(-C
+.	+0=a+@
,5dDF+/9eT!V,$,U ;Z u!VA.AT{1~s*&+jjq!&<&@&@&B
',zz!DF(A+'>'B'B'D	$Z/A	 / tAvl1nR8AT{1~,dA#0EPTVW\_I_!&qs\!^b!BA$T{1~4dA8KuUY{[\~_bOb#(=#3E6N14E#E)+D$))*D$) "C  9 k )v !, ) &  $
  hi
)1,0s   9z66z<c                     XX4SUS.n[         R                  " U R                  [         R                  " U/5      /SS9U l        g )Nr   )modulere   reasonpriceperrI   Tr   )r   r   re   r   )r   r+  re   r,  r-  rI   tmppnss          r   topnsOneqs.topnsO  s7    6aY_`DHHbllF8&<=DQr   c                 Z   U R                  SSSUS   U R                  U   5        U R                  SSSUS   U R                  U   5        U R                  SSSUS   U R                  U   5        U R                  SSSUS   U R                  U   5        U R                  U   nSU;   d  S	U;   d  S
U;   aw  US:w  aq  U R                  SSSUS   U R                  U   5        [        US   5      S::  a:  US   S
:w  a1  US:w  a+  US:w  a%  U R                  SSSUS   U R                  U   5        SU;   d  SU;   as  US:w  al  U R                  SSSUS   U R                  U   5        [        US   5      S::  a4  US:w  a-  US:w  a&  U R                  SSSUS   U R                  U   5        g g g g g g )Nr6   Pr;   r<   Sr:   r9   r  r  r  r(   rO   r   r5     r'   r   r  r  r4   )r0  rK   r6   r  )r   r  r'  rI   tmpqss        r   cal_qsjg_pnsOneqs.cal_qsjg_pnsR  s   

4D$		&0AB

4E(5/$))F2CD

4E(5/$))F2CD

4D$		&0ABggfoEMTU]cUlJJtCx'7		&8IJ8K()1,+1F1KPVX\P\agimam

4F8F+;DIIf<MNEMTU]JJtCx'7		&8IJ8K()1,&$,

4F8F+;DIIf<MN CO, 1=]r   c                     g)z[
for i in self.periodab:
    #print(i)
    print("error!!!!!!!!!!!!!! line 1635")
    pass
Nr  rm   s    r   cal_qs_pnsbyperiodOneqs.cal_qs_pnsbyperiodb  s     	r   c                 V    US   S   n0 SX#-   _SU_SU_SS_S	S_S
S_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SSSSSSSSSSSSSS.EnSSSSSS.nUR                  S   nUS:  a  XU4$ U R                  X5      nU R                  X5      nU R	                  X5      nU R                  X5      nU R                  X5      nU R                  X!Xs5      u  pU R                  XU5        U R                  XX55      u  pU R                  XVU5        XU4$ !    [        S5         GN= f)Nr   r   zerror!!!!!!!!!!!!!! line 1646r  r   rI   r   c   r6   r9   r:   r;   r<   r   r   r  r?   r  r   r  r  r  r  r   r0   )r   r   r  r  r  r  r  r  r  r(  r7  )r   r  r   rI   r  r  r'  ro  s           r   re  Oneqs.cal_qsn  s   	3W~b)JFI$6 IF B B	
 B B B B B B B B B B !B  !B!" %'$&$&$&$&$&$&$&$& $&$&$&;@ "$!#!#!#!# {{1~75(22  ,u*+))%5//;66ytSe0++EvG(F3((o	312s   D D()-rO   r_   ra   r]   rb   r`   r^   rd   r6   rL   rY   r[   rW   r\   rZ   rX   rc   r   rM   rj   rE   rS   rU   rQ   rV   rT   rR   rP   rH   rg   r   r   rK   rI   rJ   re   rf   rl   rh   ri   rN   r   rG   rF   rk   r   )__name__
__module____qualname____firstlineno____doc__r   r   rw   r   r   r  r|  r  rd  r  _Oneqs__Merger  r  r  r  r  r  r  r(  r0  r7  r:  re  __static_attributes____classcell__)r   s   @r   r   r      s    *1%dM-2\G!R92tc!J2EL@-\:8rWpELRfRO 
:) :)r   r   ).oneclass.onedbr   oneclass.onedatar   osr   sysr   rejsonr  requestswarningsr  xlrd	tracebacknumpyr   pandasr   tusharer   
sqlalchemyr   pymysqlmultiprocessingr   r	   r   	set_token
set_optionfilterwarningsdurtimedurting1FocusPerioduihandleplockshowtypehavelistseqr   	mysqlhostr   rk   rl   r   r   r  r   r   <module>rb     s   (*UUUUUU*   LLKLMM+T2H%EXDGH[%4Ii#%<<>",,."HXlL) L)r   