很久以前,为了做量化交易而写的绘图文件。
今天调用了一下,发现很多函数的参数都不记得了。
于是,找到了源文件,把函数调出来,专门记录一下,既是为了防止遗忘,也是为了方便查找。
这些都是我非常喜欢的图形和技术指标。
# K线图/蜡烛图
def kcandle(
ax, # 绘图的区域
data, # 绘图用到的数据,pandas数据:列必须有【开,收,高,低,…】
width=0.5, # K线的宽度
edgecolor_up='red', # 上涨的边框颜色
facecolor_up='white', # 上涨的填充颜色
edgecolor_down='green', # 下跌的边框颜色
facecolor_down='green', # 下跌的填充颜色
draw_start=40, # 为了避免缺失值,从哪一项开始显示
grid_show=True, # 是否显示网格
):
pass
# 三种颜色的K线图【绘制上涨、下跌和震荡三种颜色的K线图】
def ktrend(
ax, #绘图的区域
data, #序列(时间,开,收,高,低,趋势…)序列,只要前6个元素是这些值,时间必须为浮动日格式
width=0.5, #K线的宽度
colorup='r', # 上涨的颜色
colordown='g', # 下跌的颜色
colorstill='b', #震荡的颜色
colorinner='white', # K线的背景颜色
trends=1, # 趋势的类型:1.macd+ema;2.ema
trends_data=False, # data是否含有趋势的数据
draw_start=40, # 为了避免缺失值,从哪一项开始绘制
grid_show=True, # 是否显示网格
):
pass
# 反转图
def kbreak(
ax, #绘图的区域
data, # pandas数据,包括时间和价格
n=3, #反转的柱体 n>=2
width=0.5, # K线的宽度
edgecolor_up='red', # 上涨的边框颜色
facecolor_up='white', # 上涨的填充颜色
edgecolor_down='green', # 下跌的边框颜色
facecolor_down='green', # 下跌的填充颜色
count_show=False, # 是否显示趋势计数
draw_start=0, # 为了避免缺失值,从哪一项开始绘制
grid_show=True, # 是否显示网格
future_show=True, # 是否显示合约相关信息(名称、数据的频率)
):
pass
# 砖块图
def kbrick(
ax, #绘图的区域
data, # 绘图数据,包括时间和价格
n=10, #砖块的高度
width=0.9, # 砖块的宽度
edgecolor_up='OrangeRed', # 上涨的边框颜色
facecolor_up='OrangeRed', # 上涨的填充颜色
edgecolor_down='green', # 下跌的边框颜色
facecolor_down='green', # 下跌的填充颜色
count_show=False, # 是否显示趋势计数
draw_start=0, # 为了避免缺失值,从哪一项开始绘制
grid_show=True, # 是否显示网格
future_show=True, # 是否显示合约相关信息(名称、数据的频率)
):
pass
# 技术指标:成交量、MACD、随机指标KD、EMA均线
class Indicator(object):
""" 绘制技术指标的函数合集 """
def __init__(self):
pass
def draw_volume(self, ax, data, color_up='red', color_down='green', drawstart=40, grid_show=True):
"""
成交量绘图
-------------------------------------------------------
ax:绘图区域
data:必须有open、close、volume列
color_up='red':上涨的成交量颜色
color_down='green':下跌的成交量颜色
grid_show=True, # 是否显示网格
"""
pass
def draw_macd(self, ax, data, color_up='red', color_down='green', drawstart=40, grid_show=True):
"""
MACD绘图
-------------------------------------------------------
ax:绘图区域
data:必须有close列
color_up='red':0轴以上颜色
color_down='green':0轴以下颜色
grid_show=True, # 是否显示网格
"""
pass
def draw_kd(self, ax, data, color1='crimson', color2='b', drawstart=40, grid_show=True):
"""
KD指标绘图
-------------------------------------------------------
ax:绘图区域
data:必须有close、high、low列
grid_show=True, # 是否显示网格
"""
pass
def draw_ema(self, ax, data, color='DeepSkyBlue', atr=True, drawstart=40):
"""
EMA指标绘图
-------------------------------------------------------
ax:绘图区域
data:必须有close列
"""
pass