010:连续跌3天,同时这三天收盘价都在20日均线下,第四天上涨的概率--以京泉华为例

对于《连续跌三天,压第四天上涨的盈利计算》,我们可以继续优化这个策略,增加条件:同时三天都收盘在20日均线下。

因为我们上一篇《获取20日均线数据到excel表中》获得了20日均线数据,我们可以利用均线数据来编写新的脚本。这里我们用京泉华(SZ002885)为例子。

步骤:

1,用《根据股票代码和起始日期获取K线数据到excel表》的脚本获取京泉华最近大约三年的K线数据,得到文件《002885.csv》

2,用《获取20日均线数据到excel表中》的脚本获取到文件《avg_20_002885.csv》

3,最后用以下脚本(名为:three_day_green_20_low.py)来获取最终的结果:

python 复制代码
import tkinter as tk
from tkinter import filedialog
import pandas as pd

path=''
benjin = 10000.00

def open_file():
    global path
    path = filedialog.askopenfilename(initialdir="./", title="Select file", filetypes=(("Text files", "*"), ("All files", "*.*")))
    print("Selected file:", path)
    root.quit()  # 选择完文件后退出主循环

root = tk.Tk()
root.title("File Selector")

button = tk.Button(root, text="Open File", command=open_file)
button.pack()

root.mainloop()

# 读取表格数据
data = pd.read_csv(path, delimiter=',')

# 初始化计数器
total_count = 0
old_count = 0
up_count = 0
sum = 0

# 遍历数据
for i in range(len(data)-3):
    if(i<20):
        continue
    # 判断是否连续三天下跌
    if data['涨跌幅'][i] < 0 and data['涨跌幅'][i+1] < 0 and data['涨跌幅'][i+2] < 0:
        old_count += 1
        if data['收盘'][i] <  data["20日均线"][i] and data['收盘'][i+1] <  data["20日均线"][i+1] and data['收盘'][i+2] <  data["20日均线"][i+2] :
            total_count += 1
            if(i+4<len(data)):
                sum = data['涨跌幅'][i+4]/100*benjin + sum
            # 判断第四天是否上涨
            if data['涨跌幅'][i+3] > 0:
                up_count += 1

# 计算概率
probability = up_count / total_count
print("K线总数:",len(data))
print("连续三天下跌的次数为:", old_count)
print("连续三天下跌,而且三天收盘价都小于20日均线的次数:", total_count)

print("连续三天下跌后,而且三天收盘价都小于20日均线,下一天上涨次数为:", up_count)
print("连续三天下跌后,而且三天收盘价都小于20日均线,下一天上涨的概率为:", probability)
print("出现连续三天下跌,而且三天收盘价都小于20日均线,平均需要多少条K线:" , len(data)/total_count)
print("假如每次买",benjin,"最后会赚的钱为:",sum)

执行后,选择文《avg_20_002885.csv》:

打开,然后看结果:

可以多统计不同的个股,找到一些相对合适的标的。

相关推荐
bst@微胖子1 小时前
Python高级语法之selenium
开发语言·python·selenium
查理零世2 小时前
【蓝桥杯集训·每日一题2025】 AcWing 6118. 蛋糕游戏 python
python·算法·蓝桥杯
魔尔助理顾问3 小时前
一个简洁高效的Flask用户管理示例
后端·python·flask
java1234_小锋3 小时前
一周学会Flask3 Python Web开发-request请求对象与url传参
开发语言·python·flask·flask3
诚信爱国敬业友善6 小时前
常见排序方法的总结归类
开发语言·python·算法
架构默片7 小时前
【JAVA工程师从0开始学AI】,第五步:Python类的“七十二变“——当Java的铠甲遇见Python的液态金属
java·开发语言·python
小哥山水之间8 小时前
在 Python 中操作 Excel 文件
开发语言·python·excel
wang_yb10 小时前
『Python底层原理』--CPython的变量实现机制
python·databook
databook10 小时前
『Python底层原理』--CPython的变量实现机制
后端·python
ww1800010 小时前
多目标鲸鱼优化算法-NSWOA-可用于(机器人轨迹跟踪控制/柔性作业车间调度/无人机三维路径规划)
开发语言·python·算法