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)
目录
相关文章
|
4月前
|
JavaScript Python
Python量化择时的技术指标函数
Python量化择时的技术指标函数
43 0
|
8月前
|
Serverless 云计算 Python
基本技术指标 Python 实现(1)
基本技术指标 Python 实现
314 3
|
8月前
|
Python
基本技术指标 Python 实现(2)
基本技术指标 Python 实现
184 1
|
8月前
|
Python
基本技术指标 Python 实现(4)
基本技术指标 Python 实现
111 0
|
8月前
|
项目管理 Python
基本技术指标 Python 实现(3)
基本技术指标 Python 实现
173 0
|
Serverless 开发者 Python
python股票量化交易(6)---使用TA-Lib计算技术指标
python股票量化交易(6)---使用TA-Lib计算技术指标
3691 0
python股票量化交易(6)---使用TA-Lib计算技术指标
|
Python
Python用主成分分析的方法分析螺纹钢期货30多个技术指标
Python用主成分分析的方法分析螺纹钢期货30多个技术指标
131 0
|
算法 Python
python-技术指标-ema算法
python-技术指标-ema算法
250 0
|
1月前
|
人工智能 数据可视化 数据挖掘
探索Python编程:从基础到高级
在这篇文章中,我们将一起深入探索Python编程的世界。无论你是初学者还是有经验的程序员,都可以从中获得新的知识和技能。我们将从Python的基础语法开始,然后逐步过渡到更复杂的主题,如面向对象编程、异常处理和模块使用。最后,我们将通过一些实际的代码示例,来展示如何应用这些知识解决实际问题。让我们一起开启Python编程的旅程吧!
|
1月前
|
存储 数据采集 人工智能
Python编程入门:从零基础到实战应用
本文是一篇面向初学者的Python编程教程,旨在帮助读者从零开始学习Python编程语言。文章首先介绍了Python的基本概念和特点,然后通过一个简单的例子展示了如何编写Python代码。接下来,文章详细介绍了Python的数据类型、变量、运算符、控制结构、函数等基本语法知识。最后,文章通过一个实战项目——制作一个简单的计算器程序,帮助读者巩固所学知识并提高编程技能。

热门文章

最新文章