量化分析小函数——上穿函数

上穿函数用于判断上穿信号的有无。输入为两条信号,obj和ref,两者数据类型为python列表。主要判断obj是否上穿ref。

import talib as tl
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt

#上穿信号
#obj上穿ref,返回上穿位置索引
def upcross(obj, ref):
    print(ref[0] < 1)
    assert len(obj) == len(ref), '上穿信号输入维度不相等'
    assert len(obj) > 1, '上穿信号长度至少为2'
    res =[]
    for i in range(1, len(obj)):
        
        if obj[i-1] < ref[i-1] and obj[i] > ref[i]:
            res.append(i)
    #print(res)
    return res


if __name__ == '__main__':
    df = pd.read_csv('600029.SH.csv')
    close = df.close.values 
    close_avg = tl.MA(close, 20)
    res = upcross(close, close_avg)
    print(res)
    
    plt.plot(range(len(close)), close)
    plt.plot(range(len(close_avg)), close_avg)
    for r in res:
        plt.axvline(r, ls="-.",c="r")
    plt.legend(['close', 'close_avg'])
    plt.show()

量化分析小函数——上穿函数

 

ps:

1、公众号实时查询股票涨幅,无需打开交易软件,方便查看;

2、量化知识和策略分享。

请关注“量化之窗”公众号,如有疑问,请在文章下方留言,欢迎使用!

上一篇:【CorelDraw VBA 010例】位图转CMYK


下一篇:医咖会免费STATA教程学习笔记——日志文件