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》:

打开,然后看结果:

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

相关推荐
冷雨夜中漫步6 小时前
Python快速入门(6)——for/if/while语句
开发语言·经验分享·笔记·python
郝学胜-神的一滴7 小时前
深入解析Python字典的继承关系:从abc模块看设计之美
网络·数据结构·python·程序人生
百锦再7 小时前
Reactive编程入门:Project Reactor 深度指南
前端·javascript·python·react.js·django·前端框架·reactjs
喵手9 小时前
Python爬虫实战:旅游数据采集实战 - 携程&去哪儿酒店机票价格监控完整方案(附CSV导出 + SQLite持久化存储)!
爬虫·python·爬虫实战·零基础python爬虫教学·采集结果csv导出·旅游数据采集·携程/去哪儿酒店机票价格监控
2501_944934739 小时前
高职大数据技术专业,CDA和Python认证优先考哪个?
大数据·开发语言·python
helloworldandy9 小时前
使用Pandas进行数据分析:从数据清洗到可视化
jvm·数据库·python
肖永威10 小时前
macOS环境安装/卸载python实践笔记
笔记·python·macos
TechWJ10 小时前
PyPTO编程范式深度解读:让NPU开发像写Python一样简单
开发语言·python·cann·pypto
枷锁—sha11 小时前
【SRC】SQL注入WAF 绕过应对策略(二)
网络·数据库·python·sql·安全·网络安全
abluckyboy11 小时前
Java 实现求 n 的 n^n 次方的最后一位数字
java·python·算法