cufflinks-绘制K线图

bash 复制代码
pip install cufflinks

绘制K线图

python 复制代码
import yfinance as yf
import cufflinks as cf

cf.set_config_file(offline=True, world_readable=True)

data = yf.download('QQQ', '2022-01-01', '2023-05-06')

qf = cf.QuantFig(data, title='QQQ', legend='top', name='QQQ')
qf.add_volume()
qf.add_ema(periods=20, column='Close', color='gray')

qf.add_trendline('2023-01-06','2023-03-13',on='low')
qf.add_resistance('2022-08-16',on='high',mode='toend')
qf.add_support('2022-10-13',on='low',mode='toend')

qf.iplot(up_color='green',down_color='red')

剔除周六周日

python 复制代码
fig = qf.figure(up_color='green',down_color='red')
fig.update_xaxes(rangebreaks=[dict(bounds=["sat", "mon"])])
fig.show()

剔除所有非交易日

python 复制代码
import datetime

def date_range(begin, end):
    range_list = []
    d = begin
    delta = datetime.timedelta(days=1)
    while d <= end:
        range_list.append(d)
        d += delta
    return range_list

begin = datetime.date(2022,1,1)
end = datetime.datetime.now().date()
# 获取所有日期
dr = date_range(begin, end)


dr_str = list(map(lambda x: x.strftime("%Y-%m-%d"), dr))
# 获取所有交易日
data_str = list(map(lambda x: x.strftime("%Y-%m-%d"), data.index.tolist()))
# 获取所有非交易日
s = list(filter(lambda x: x not in data_str,dr_str))

fig = qf.figure(up_color='green',down_color='red')
fig.update_xaxes(
    rangebreaks=[
        dict(values=s)  # 剔除所有非交易日
    ]
)
fig.show()
相关推荐
雷欧力13 小时前
如何使用 Claude API?3 种接入方案实测,附完整代码(2026)
python·claude
神仙别闹13 小时前
基于 Python 实现 BERT 的情感分析模型
开发语言·python·bert
NQBJT13 小时前
VS Code配置Python人工智能开发环境
开发语言·人工智能·vscode·python
浮游本尊13 小时前
一文讲透巡检链路:采集程序 → 上传数据包 → 后端解析入库 → 分析出报告
python
a11177614 小时前
MonoGS 在 Jetson Orin Nano 上的部署与性能测试
python·开源·torch·cv
偶尔微微一笑14 小时前
智能体四大核心模块揭秘
python
2301_8159019714 小时前
SQL如何将多行记录聚合成逗号分隔字符串_GROUP_CONCAT技巧
jvm·数据库·python
西索斯14 小时前
Claude API 报 529 Overloaded 怎么办?3 种方案实测,最后一种最省心
python·claude
Flittly14 小时前
【LangGraph新手村系列】(3)PostgreSQL 持久化检查点:让状态跨越进程与重启
人工智能·python·langchain
.柒宇.14 小时前
FastAPI 基础指南:从入门到实战
开发语言·python·fastapi