python选股策略

import akshare as ak
import pandas as pd
def begin(kyg):
    resp_json = ak.stock_zh_a_hist(symbol=kyg, period="daily", start_date="20190301", end_date='20220729', adjust="")
    df = pd.DataFrame(resp_json)
    ma = df['收盘']
    a = ma.rolling(window=20).mean()
    b = ma.rolling(window=60).mean()
    a = list(a)
    b = list(b)
    if a[-1] > b[-1]: 
#取4个列表值,hongda,lvxiao,hongxiao,lvda。
#有两条线,a绿线MA20,b红线MA60。
#当线在a>b金叉到a< b死叉(绿色云)区间时,取a的最大值添加到(lvda)里,b的最小值添加到( hongxiao)里。
#当线在a< b死叉到a
#当a[-1]>lvda[-1] and b[-1]>hongda[-1]:
#print(有个提醒)
#当a[-1]
#print(有个提醒)

        return True
gpc = []
gp=['000001', '000002', '000004', '000005', '000006', '000007', '000008', '000009', '000010', '000011', '000012', '000014', '000016', '000017', '000019']
for bb in gp:
    try:
        if begin(bb):
            gpc.append(bb)
            print(bb)
    except:
        print("cuowu" + bb)
print(gpc)

img

#取4个列表值,hongda,lvxiao,hongxiao,lvda。
#有两条线,a绿线MA20,b红线MA60。
#当线在a>b金叉到a< b死叉(绿色云)区间时,取a的最大值添加到(lvda)里,b的最小值添加到( hongxiao)里。
#当线在a< b死叉到a#当a[-1]>lvda[-1] and b[-1]>hongda[-1]:
#print(有个提醒)
#当a[-1]#print(有个提醒)

img

#取4个列表值,hongda,lvxiao,hongxiao,lvda。
#有两条线,a绿线MA20,b红线MA60。
#当线在a>b金叉到a< b死叉(绿色云)区间时,取a的最大值添加到(lvda)里,b的最小值添加到( hongxiao)里。
#当线在a< b死叉到a<b金叉(红色云)区间时,取b的最大值添加到(hongda)里,a的最小值添加到(lvxiao)里。
#当a[-1]>lvda[-1] and b[-1]>hongda[-1]:
#print(有个提醒)
#当a[-1]<lvxiao[-1] and b[-1]<hongxiao[-1]:
#print(有个提醒)

https://blog.csdn.net/weixin_39585463/article/details/110754501?spm=1005.2026.3001.5635&utm_medium=distribute.pc_relevant_ask_down.none-task-blog-2~default~OPENSEARCH~Rate-4-110754501-ask-7767670.pc_feed_download_top3ask&depth_1-utm_source=distribute.pc_relevant_ask_down.none-task-blog-2~default~OPENSEARCH~Rate-4-110754501-ask-7767670.pc_feed_download_top3ask

自己编译好过用别人源码