python-分水岭-技术指标

简介: python-分水岭-技术指标
def get_EMA(df,N):
    for i in range(len(df)):
        if i==0:
            df.ix[i,'ema']=df.ix[i,'close']
        if i>0:
            df.ix[i,'ema']=(2*df.ix[i-1,'close']+(N-1)*df.ix[i,'close'])/(N+1)
    return df
def get_DMA(df):
    #大智慧动态移动平均,移动平均值是根据相应的指标不断变动的,a就是动态值,
    #假设为最低价/最高价,可以根据实际情况调整
     df['ema']= get_EMA(df,10)['ema']
     df['5vol']=df['volume'].rolling(window=5,min_periods=1).sum()
     dma=[]
     for i in range(len(df)):
        if i==0:
            dma.append(df.ix[i,'close'])
        if i>0:
            a=df.ix[i,'5vol']/(3*df.ix[i,'amt'])
            #print (a)
            a1=(1-a)*df.ix[i,'ema']
            a2=a*float(dma[len(dma)-1])
            dma.append(a1+a2)
     df['dma']=dma     
     return df
def get_FSL(df):
    #大智慧分水岭,在上做多,在下做空
    df['sw1']=(get_EMA(df,5)['ema']*7+get_EMA(df,10)['ema']*3)/10
    df['sw']=get_DMA(df)['dma']
    return df
from WindPy import*
import pandas as pd
import numpy as np
import datetime
import time
#获取数据
w.start(60)
symbol="000001.SZ"
start_date="2016-01-01"
end_date="2017-05-02"
stock=w.wsd(symbol, "trade_code,open,high,low,close,pre_close,\
                  volume,amt", start_date,end_date)
df = pd.DataFrame()
df['date']=stock.Times
df['stock_code']=stock.Data[0]
#index_data['stock_code'] =symbol
df['open'] =stock.Data[1]
df['high'] =stock.Data[2]
df['low']  =stock.Data[3]
df['close']=stock.Data[4]
df['pre_close']=stock.Data[5]
df['volume']=stock.Data[6]
df['amt']=stock.Data[7]
df.head()
get_FSL(df)
目录
相关文章
|
2月前
|
JavaScript Python
Python量化择时的技术指标函数
Python量化择时的技术指标函数
|
6月前
|
Serverless 云计算 Python
基本技术指标 Python 实现(1)
基本技术指标 Python 实现
268 3
|
6月前
|
Python
基本技术指标 Python 实现(2)
基本技术指标 Python 实现
159 1
|
6月前
|
Python
基本技术指标 Python 实现(4)
基本技术指标 Python 实现
95 0
|
6月前
|
项目管理 Python
基本技术指标 Python 实现(3)
基本技术指标 Python 实现
155 0
|
Serverless 开发者 Python
python股票量化交易(6)---使用TA-Lib计算技术指标
python股票量化交易(6)---使用TA-Lib计算技术指标
3297 0
python股票量化交易(6)---使用TA-Lib计算技术指标
|
Python
Python用主成分分析的方法分析螺纹钢期货30多个技术指标
Python用主成分分析的方法分析螺纹钢期货30多个技术指标
112 0
|
算法 Python
python-技术指标-ema算法
python-技术指标-ema算法
241 0
|
3天前
|
设计模式 算法 搜索推荐
Python编程中的设计模式:优雅解决复杂问题的钥匙####
本文将探讨Python编程中几种核心设计模式的应用实例与优势,不涉及具体代码示例,而是聚焦于每种模式背后的设计理念、适用场景及其如何促进代码的可维护性和扩展性。通过理解这些设计模式,开发者可以更加高效地构建软件系统,实现代码复用,提升项目质量。 ####
|
2天前
|
机器学习/深度学习 存储 算法
探索Python编程:从基础到高级应用
【10月更文挑战第38天】本文旨在引导读者从Python的基础知识出发,逐渐深入到高级编程概念。通过简明的语言和实际代码示例,我们将一起探索这门语言的魅力和潜力,理解它如何帮助解决现实问题,并启发我们思考编程在现代社会中的作用和意义。