• 012:计算影线长度占比


            怎么说呢,我希望得到一个数据,就是某个K线的影线长短。可以这样算,用高点和低点的差值作为分母,开盘价和收盘价的差值的绝对值作为分子,得出的值得越大,说明影线越长,影线越长,说明上传下跳得越厉害,也就是震荡得越厉害。我喜欢这种个股。

    步骤:

    1,获得K线数据

    2,新增一列,计算影线长度占比

    1. import pandas as pd
    2. import numpy as np
    3. import tkinter as tk
    4. from tkinter import filedialog
    5. import os
    6. path=''
    7. def open_file():
    8. global path
    9. path = filedialog.askopenfilename(initialdir="./", title="Select file", filetypes=(("Text files", "*"), ("All files", "*.*")))
    10. print("Selected file:", path)
    11. root.quit() # 选择完文件后退出主循环
    12. root = tk.Tk()
    13. root.title("File Selector")
    14. button = tk.Button(root, text="Open File", command=open_file)
    15. button.pack()
    16. root.mainloop()
    17. # 读取表格数据
    18. df = pd.read_csv(path, delimiter=',')
    19. # 计算影线长度占比
    20. df['影线长度占比'] = 1- (abs(df['开盘'] - df['收盘'])) / (df['最高'] - df['最低'])
    21. # 如果分母为0,将影线长度占比设为0
    22. df = df.replace({'影线长度占比': {0: np.nan}}) # 将0替换为NaN,方便后续处理
    23. # 使用条件判断,如果分母为0,则影线长度占比设为0,否则保持原值
    24. df['影线长度占比'] = df['影线长度占比'].apply(lambda x: 0 if x == 0 else x)
    25. df['影线长度占比'] = df['影线长度占比'].round(3)
    26. filename = os.path.basename(path)
    27. # 保存到新的CSV文件
    28. # df.to_csv('002456_2018_new.csv', index=False)
    29. df.to_csv('shadow_'+filename, index=False)
    30. print("已经保存文件--shadow_"+filename)
    31. # 计算均值
    32. 影线长度占比 = df['影线长度占比']
    33. 均值 = 影线长度占比.mean()
    34. print("影线长度占比均值:", 均值)

    K线数据的获取,参考再《005》

    效果:

  • 相关阅读:
    UID、EUID、GID和EGID
    医疗保健行业的福音是对话式AI吗?
    yaml 知识点记录
    Windows 平台Qt 程序发布
    Flip技术
    #力扣:2894. 分类求和并作差@FDDLC
    矩阵分析学习笔记(四):λ矩阵及其Smith标准型
    科研相关流程与资料推荐
    人工智能与开源机器学习框架
    在 Python 中创建具有当前日期和时间的文件名
  • 原文地址:https://blog.csdn.net/k1419197516/article/details/134067675