首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在Python 2.7中计算正确的MACD和RSI索引,因为它们显示在binance web界面中

在Python 2.7中计算正确的MACD和RSI指标,可以使用一些第三方库和算法来实现。下面是一个基本的示例代码,用于计算MACD和RSI指标:

代码语言:txt
复制
import numpy as np
import pandas as pd

def calculate_macd(data, short_period=12, long_period=26, signal_period=9):
    # 计算指数移动平均线(EMA)
    ema_short = data.ewm(span=short_period, adjust=False).mean()
    ema_long = data.ewm(span=long_period, adjust=False).mean()

    # 计算差离值(DIF)
    dif = ema_short - ema_long

    # 计算信号线(DEA)
    signal = dif.ewm(span=signal_period, adjust=False).mean()

    # 计算MACD柱状图
    macd = dif - signal

    return dif, signal, macd

def calculate_rsi(data, period=14):
    # 计算价格变化
    delta = data.diff()

    # 去除第一个NaN值
    delta = delta[1:]

    # 分别计算上涨和下跌的价格变化
    up = delta.copy()
    down = delta.copy()
    up[up < 0] = 0
    down[down > 0] = 0

    # 计算平均增长率
    avg_gain = up.rolling(window=period).mean()
    avg_loss = abs(down.rolling(window=period).mean())

    # 计算相对强弱指标(RSI)
    rs = avg_gain / avg_loss
    rsi = 100 - (100 / (1 + rs))

    return rsi

# 假设有一组价格数据,存储在一个DataFrame中的"Close"列中
data = pd.DataFrame({'Close': [10, 12, 15, 14, 13, 16, 18, 17, 19, 20]})

# 计算MACD指标
macd_dif, macd_signal, macd_hist = calculate_macd(data['Close'])

# 计算RSI指标
rsi = calculate_rsi(data['Close'])

# 打印结果
print("MACD DIF:", macd_dif)
print("MACD Signal:", macd_signal)
print("MACD Histogram:", macd_hist)
print("RSI:", rsi)

上述代码中,我们使用了numpypandas库来进行数据处理和计算。calculate_macd函数用于计算MACD指标,接受一个价格数据的Series作为输入,并返回DIF、信号线和柱状图的Series。calculate_rsi函数用于计算RSI指标,接受一个价格数据的Series作为输入,并返回RSI的Series。

请注意,这只是一个简单的示例代码,实际应用中可能需要根据具体需求进行调整和优化。另外,为了获取实时的价格数据,可能需要使用相应的数据源或API。

对于binance web界面中显示的MACD和RSI指标,可以使用以上代码计算得出的指标值进行对比和验证。同时,腾讯云提供了一系列与云计算相关的产品和服务,可以根据具体需求选择适合的产品。例如,可以使用腾讯云的云服务器(CVM)来搭建和运行Python环境,使用对象存储(COS)来存储和管理数据,使用云数据库(CDB)来存储和查询数据等。具体产品介绍和链接地址可以参考腾讯云官方网站。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

金融数据分析与挖掘具体实现方法 -2

2.1.1 MACD原理以及计算公式 原理:MACD意义双移动平均线基本相同,即由快、慢均线离散、聚合表征当前多空状态股价可能发展变化趋势,但阅读起来更方便。...: 从文件读取股票数据 按照日期索引排序 增加一列index索引数据, 后续不需要日期索引 抽取index, open, close, high, low五列数据, 后续用来计算MACD...("卖出某某股票多少股")   我们对RSI做个总结     尤其市场剧烈震荡时,还应参考其它指标进行综合分析,不能简单地依赖RSI信号来作出买卖决定,可以MACD结合一起使用。...2.3.2 BOLL指标的计算方法 BOLL指标的计算公式 轨线(MA)=N日移动平均线 上轨线(UP)=轨线+两倍标准差 下轨线(DN)=轨线-两倍标准差 强弱指标的计算公式如下...股价轨下方运行时属较危险状态,短线应趁反弹轨时离场。 股价突破上轨线后,回探轨线时不跌破轨线,显示后市看涨,可持股或加仓。

2.3K21

实战:基于技术分析Python算法交易

本文中,我会介绍如何使用流行 Python 库 TA-Lib 以及 zipline 回测框架来计算 TA 指标。我会创建 5 种策略,然后研究哪种策略投资期限内表现最好。...然而,这笔交易是次日执行,价格可能会发生大幅变化。 zipline ,交易不会因为金额不足而被拒,但我们可以通过负余额将其终止。...,因为它们执行方式都是一样。...必须记住一点,由于 MACD 是基于移动平均方法进行计算,因此它是一种滞后指标。这就解释了为什么 MACD 股市上作用很小,它无法得出准确价格趋势。...有时候,也可能会设定一个比较居中值,比如在涉及到做空策略。我们也可以选择更极端阈值,如2080。不过,这要求具备专业知识,或者回测时尝试。

1.6K22
  • 用matplotlibpandas绘制股票MACD指标图,并验证化交易策略

    请注意,第11行第13行是通过df.ix形式访问索引行(比如第i行)指定标签列(比如EMA列)数值,ix方法与之前loc以及iloc方法不同是,ix方法可以通过索引标签值访问,而loc...第37行,得到了stock_600895数据表字段列表。第40行第41行for循环中,把字段列表第0行索引元素放入了heads。...从第59行到第61行程序语句设置了x轴标签,如果显示每天日期,那么x轴上文字会过于密集,所以第59行第60行进行相应处理,只显示stockDataFrame.index%10==0(即索引值是...第13行定义计算MACDcalMACD方法DrawMACD.py范例程序同名方法也完全一致,但在最后第15行,是通过return语句返回整个df对象,而不是返回仅仅包含MACD指标的相关列,这是因为...以股票RSI指标为例,学习Python发送邮件功能(含RSI指标确定卖点策略) 以预测股票涨跌案例入门基于SVM机器学习 用pythonmatplotlibnumpy库绘制股票K线均线成交量整合效果

    4K10

    10分钟学会ikvStockChart制作K线图(股票走势图)

    于是我整理了这篇博客,让大家一看就明白使用正确姿势。 OK,Show me your code!Go!Go!Go! 先来看一波效果图: ?...效果图 一、新版本功能介绍(当前最新版本:0.1.5) ikvStockChart一个简单Android图表库,支持时间线,k线,macd,kdj,rsi,boll索引交互式手势操作,包括左右滑动刷新...支持 XML 布局文件代码设置各个线条颜色、大小配置 2. 支持左滑、右滑加载 3. 支持长按高亮、短按点击、双指缩放事件 4. 支持 fling 滑动 5....支持 MACDRSI、KDJ、BOLL 四个指标 6....支持自定义指标显示方式 ikvStockChart这个库附带sample有:默认左滑右滑加载、禁用左滑右滑加载、多个指标共同联动显示 Fragment 中使用、带有下拉刷新需求中使用、横竖屏切换

    4.2K20

    《极限挑战》罗志祥遭套路“破产”,我们却看到了更大危机

    进行外贸交易时,本国货币与交易国货币价值对比,决定了企业利润。如果货币价值突然下降,那么企业最终可能会亏损。 对于小公司而言,它们处理处理货币风险问题时会担心货币波动产生高成本。...例 2:RSI(14)、RSI(5)、RSI(10)、价格 - SMA(50)、价格 - SMA(10)、CCI(30)、CCI(15)、CCI(5)。在这个例子,我们选择了 8 个指标。...为了选择正确子集,基本上某种组合中使用 ML 算法。所选特征被称为机器学习预测器。 3、支持向量机(SVM):SVM 是一种众所周知监督机器学习算法,用于解决分类回归问题。...指标为 MACD(12,26,9)抛物线 SAR,默认设置为(0.02,0.2)。 首先, R 语言中加载必要库,读取 EUR / USD 数据。...然后,使用「TTR」包中提供各自功能计算 MACD 抛物线 SAR。随后,从每个数据点 SAR 值减去收盘 EUR / USD 价格。

    79430

    freqtrade 学习笔记

    /替换限价订单leverage():允许杠杆市场交易时,此方法返回所需杠杆(默认为 1 -> 无杠杆)止损可以使用交易所止损(需要对应交易所支持,比如 Binance )或者 非交易所止损todo...另一种情况下,如果目标设置为偏移价格变动,则此缓冲区是不必要因为时间范围末尾偏移蜡烛图将为NaN,并且FreqAI将自动将它们从训练数据集中剪切掉。...ADX指标的计算方法基于其他两个指标:+DI-DI。+DI-DI分别代表上升趋势下降趋势方向指标,它们计算方法基于股票或其他资产最高价、最低价收盘价等数据。...rsi 70fisher_rsiFisher RSI 计算方式基于 RSI 计算结果,通过对 RSI 进行平滑处理变换得到。...计算MACD柱,即MACD线与信号线之间差异,通常用柱状图表示,公式为MACD柱=MACD线-信号线。MACD指标的取值通常为正数负数。

    4.6K612

    Python书被台湾出版社引进版权了,书名字也更吸引人了

    我去年出了一本Python书,基于股票大数据分析Python入门实战,在这本书里,我是用股票范例讲述Pythorn爬虫,数据分析机器学习知识点,如下是京东连接。...新书名字叫:股票发大财 用Python预测玩转股市高手精解 初一看,我不敢相信这本书还是我因为标题封面都变了,这个是新书封面,。 ?...不过我又担心了,这本书本来是用MACD,KDJ,OBV等指标讲爬虫、数据分析Python语法技术,虽然也有验证量化策略,但书里也有声明,说这本是讲技术,不是讲预测,读者可以从从学到python技能,但无法以此挣钱...7 GUI界面里,动态地爬取数据,并整合绘制K线KDJ指标线 ? ? ​ 8 GUI界面里,验证基于KDJ买卖策略效果图 ? ? ​...9 通过邮件,发送K线均线整合RSI指标的效果图,同时验证交易策略。 ? ? ​ 10 Django框架里,绘制K线BIAS指标效果,并验证交易策略 此范例规模可以做课程设计 ? ? ​

    67010

    币聪财经-币安BNB价格分析,BNB将继续坚持看涨行情,目前仍处于有利支撑位

    撰写本文时,Binance硬币以13.68美元价格交换。 基于以太坊TOKEN是由Binance平台背后团队创建。...BNB销售在其ICO筹集了1500万美元,因为BNB TOKEN允许用户获得在其平台上进行交易所涉及费用折扣。...目前使用BNB购买加密货币将导致交易费用减少50%,随着时间推移会增加,从而为交易者带来极大节省。 更重要是,Binance团队已承诺每季度利用其20%利润来购买BNB代币以销毁它们。...这是从低到高价格上涨超过1,680%。 创下历史新高之后,市场继续贬值,最初1月份.5斐波那契回撤获得支撑,定价为13.37美元。这是从上述整个看涨运行测量斐波那契回撤。...位于下方进一步支撑位于1.414斐波纳契扩展板下方,售价为11.78美元,其次是1.618斐波纳契扩展,售价为10.98美元。 RSI技术指标目前略微偏向于市场多头,因为它目前交易50手以上。

    44940

    BackTrader 中文文档(二十二)

    pinkfish是另一个 Python 回测框架(README列出),可以以下网址找到:pinkfish。...过滤器逻辑更加简单,因为没有微妙回放尝试。...要求 TA-Lib Python 包装器 它需要任何依赖项(例如numpy) 安装详情GitHub存储库 使用ta-lib 就像使用backtrader已经内置任何指标一样容易...为了避免将subplot添加到图表,有一个自动绘图转换来识别模式时间点上data上绘制它们。 示例比较 以下是一些ta-lib指标输出与backtrader中等效内置指标输出图表比较。...立即显示: 交易次数翻了一番 现金(除了一开始)永远不等于价值,因为策略始终市场上 使用示例 $ .

    44800

    【学术】算法交易神经网络:强化经典策略

    让我们来看看下面的策略假设:移动平均线交叉时刻,我们将预测一些特征变化,如果我们真的期望跳跃,我们将相信这个交易信号。否则,我们就会跳过它,因为我们不想在平坦区域上赔钱。...输入数据 在这里,我们将使用PandasPyTi生成更多指标,以将它们作为输入。我们将使用MACD、Ichimocku cloud、RSI、波动率等。...从2012年到2016年,我们以AAPL价格训练我们网络,并在2016 – 2017年进行测试,就像我们之前一个教程那样。...可能改进 这个方法似乎是可行,我想向你介绍一些可能改进,我强烈建议你自己尝试一下: 不同指标策略:MACD,RSI; 配对交易策略可以通过提出方法进行优化; 尝试预测不同时间序列特征:赫斯特指数...在这篇文章,我想用神经网络来完成(至少一段时间内)金融时间序列预测主题。我们不能直接用它们来预测价格是否会上涨或下跌,来赚很多钱。我们考虑了不同数据源目标,仔细地处理过拟合优化过超参数。

    80021

    pythonmatplotlibnumpy库绘制股票K线均线整合效果(含从网络接口爬取数据验证交易策略代码)

    本系列后面文章,将陆续通过python绘制成交量、KDJ、MACDRSIOBV等指标,而且还会用Python编写针对这些指标的交易策略,敬请关注。...第二,之前案例,x轴刻度是每个交易日日期,但如果显示时间范围过长,那么时间刻度就会太密集,影响美观效果,所以这里将只显示主刻度。改进后代码如下所示。 1 #!...循环里,我们通过rolling方法,还是计算了3日、5日10日均价,并把计算结果记录到当前行MA_3、MA_5MA_10这三列,这样做目的是为了演示动态创建列做法。...5 通过DataFrame验证均线卖点策略 同样地,根据5日均线计算参考买点,如下案例,我们计算了张江高科2019年1月到3月内卖点。 1 #!...6 求推荐,后文预告与版权说明 本系列后面文章,将陆续通过python绘制成交量、KDJ、MACDRSIOBV等指标,而且还会用Python编写针对这些指标的交易策略,敬请关注。

    2.8K30

    万字长文助你搞懂现代网页开发中常见10种渲染模式

    这种转变主要归功于无数涌现框架技术,它们旨在简化增强构建引人入胜用户界面的过程。然而,由于现有框架丰富多样以及不断涌现新框架,跟上前端趋势已成为一项艰巨任务。...对于新手来说,很容易感到不知所措,仿佛迷失广阔选择海洋。 渲染是前端开发核心挑战,它将数据代码转化为可见且可交互用户界面。...选择正确渲染模式对开发人员来说至关重要,因为它直接影响到Web应用程序性能、成本、速度、可扩展性、用户体验,甚至开发人员体验。...序列化, Qwik 显示服务器上开始构建网页能力,并在从服务器发送捆绑包后继续客户端上执行构建,节省了其他框架重新初始化客户端时间。...流式SSR通过将应用程序用户界面分块服务器上进行渲染。每个块准备好后立即进行渲染,然后流式传输到客户端。客户端接收到块时显示填充它们

    41721

    用代码说话!机器学习能预测股市吗?

    2 特征 常用量价技术指标:Chaikin A/D、BBAND、CCI、EMA、MACD、OBV、RSI、SMASTOCH。...我们以为我们找到了预测股市方法。然而,情况并非如此,因为我们发现了我们模型一个主要缺陷。 按照惯例,机器学习,为了创建训练测试集,需要对打乱数据集中数据顺序(shuffle)。...在这种情况下,训练集收盘价格徘徊每股20美元,但因为我们使用是2019年作为测试集,价格是截然不同,因此,该模型将它们正确标签在分配表现不佳,特别是考虑到我们记录有一系列特征值,训练集不存在...在这种情况下,训练集收盘价徘徊每股20美元左右,但因为我们使用是2019年作为测试集,价格是截然不同,因此,模型在给他们分配正确标签时将表现不佳,特别是考虑到我们记录特征,其值范围在训练集中不存在...实验2(第二天价格上升 / 下降作为标签) 1、TPOT TPOT是一个开源AutoML Python包,可以运行许多不同特性工程模型选择组合。

    2.3K20

    机器学习模型变量评估选择基于技术指标『深度解析』

    简介 本文重点介绍机器学习模型输入变量(预测因子)选择,预处理以及评估相关细节。所有的计算实验将用R语言来实现。 输入数据 我们将采用11个指标(振荡器),输入设置不设优先级。...最终,用于分类变量重要度是考虑它们贡献影响在内。请注意变量tr,基于全局重要度的话应该位于最后一位,理论上它应该被丢弃,但却因为强相互影响性使其排名升至第六位。...此处我们对能够选择确定分类变量并不感兴趣,我们感兴趣是当在做出选择时,确定分类中有重要作用变量。不考虑分类重要度,根据它们每个分类排位,变量顺序给出了其自由排名。...<预测因子不同分类重要度也不同。 基于相互影响变量重要度 下图显示了每个变量显示方式与任何其它变量联合相互作用。...依赖性:对于变量对,显示它们 依赖关系,以及 预测同一个class时针对定义依赖性评估协议。对于分类变量, 使用交叉制表。热力图 : 针对变量对,显示哪里相关性 是最强

    1.7K50

    用于金融时序预测神经网络:可改善经典移动平均线策略

    之前 5 篇教程,我们讨论了用于金融预测的人工神经网络,比较金融时序预测不同架构,意识到如何通过正确数据处理正则化实现充分预测,执行基于多变量时序预测,并取得了非常好波动率(volatility...第 6 篇教程,我们借助不同来源数据进行设置实验,用一个神经网络完成两个任务,优化超参数从而实现更优预测。...让我们看看下面的策略假设:我们移动平均线交叉处预测某些特征变化。如果出现一个跳跃,我们便将其作为交易信号;否则就跳过它,因为我们不想在平滑区域损失钱。...image.png 分布偏度 输入数据 这里我们使用 pandas PyTi 来生成更多指标,并将其作为输入。我们将使用 MACD、Ichimocku cloud、RSI、波动率等。...我还想介绍一些可能有效改进,大家可以自己试一下: 不同指标策略:MACDRSI 将能够极好优化交易策略与提出方法相结合。

    1.1K80

    教程 | 用于金融时序预测神经网络:可改善移动平均线经典策略

    之前 5 篇教程,我们讨论了用于金融预测的人工神经网络,比较金融时序预测不同架构,意识到如何通过正确数据处理正则化实现充分预测,执行基于多变量时序预测,并取得了非常好波动率(volatility...第 6 篇教程,我们借助不同来源数据进行设置实验,用一个神经网络完成两个任务,优化超参数从而实现更优预测。...让我们看看下面的策略假设:我们移动平均线交叉处预测某些特征变化。如果出现一个跳跃,我们便将其作为交易信号;否则就跳过它,因为我们不想在平滑区域损失钱。...分布偏度 输入数据 这里我们使用 pandas PyTi 来生成更多指标,并将其作为输入。我们将使用 MACD、Ichimocku cloud、RSI、波动率等。...我还想介绍一些可能有效改进,大家可以自己试一下: 不同指标策略:MACDRSI 将能够极好优化交易策略与提出方法相结合 试着预测不同时序特征:赫斯特指数(Hurst exponent)、

    1.4K81

    PyAlgoTrade 0.20 中文文档(一)

    PyAlgoTrade 是使用 Python 2.7/3.7 开发测试,依赖于: NumPy SciPy (numpy.scipy.org/)。...技术指标 这些是一组过滤器,你用它们对 DataSeries 进行计算。例如 SMA(简单移动平均)、RSI(相对强弱指标)等。这些过滤器被建模为 DataSeries 装饰器。...优化器 这些是一组允许您在不同计算机之间分发回测类,或者同一计算机上运行不同进程之间分发回测类,或者两者兼而有之。它们使水平扩展变得容易。 说了这么多,我们测试策略所需第一件事是一些数据。...有关技术指标的一个重要事项是它们可以组合使用。这是因为它们也被建模为 DataSeries。...这是因为前 14 个 RSI 值为 None,而第 15 个是 SMA 过滤器收到第一个非 None 值。只有当我们有 15 个非 None 值时,才能计算 SMA(15)。

    30110

    量化投资教程:用R语言打造量化分析平台

    概述 Python计算环境tushare包一样,R我们使用quantmod包接入第三方数据源,实现自定义量化分析平台构建。...什么是quantmod quantmod就是提供给宽客们使用专业模块,Quantmod本身提供强大数据接入能力,默认是雅虎财经数据源,此外quantmod还以绘制专业行情分析图表以及各种技术指标计算等功能著称...原理 利用API读取方式,我们需要设定一个读取序列对应配置,获取行情函数getSymbols类似于原生assignget函数,用函数方式将变量名传入后完成变量赋值。...zoo本身是一种时间序列格式,而xts则是在这基础上一种时间序列格式加强版。在读取csv时候,我们需要用首行确定header。转化为zoo时,我们则需要首列来确定时间序列对应时间。...曲线addMACD() 效果 指标计算 参考官方文档,我们知道,利用quantmodTTR包,我们可以快速计算常见指标,下面是对应计算列表。

    2.1K90

    【独家】周志华教授gcForest(多粒度级联森林)算法预测股指期货涨跌

    级联森林(Cascade Forest) 因为决策树其实是特征空间中不断划分子空间,并且给每个子空间打上标签(分类问题就是一个类别,回归问题就是一个目标值),所以给予一条测试样本,每棵树会根据样本所在子空间中训练样本类别占比生成一个类别的概率分布...算法实现 鉴于此,Github上,已经有人实现了算法代码。在这里我们提供一个基于python3代码实现方法。选择采用scikit学习语法以方便使用,下面将介绍如何使用它。...关于规模 目前gcForest实现主要技术问题是输入数据时内存使用情况。真实计算实际上可以让您了解算法将处理对象数量规模。...X,并转置X = np.array([open,close,high,low,volume,ema, macd, linreg, momentum, rsi, var, cycle, atr]).T#...98% 单独利用多粒度扫描级联森林 由于多粒度扫描级联森林模块是相当独立,因此可以单独使用它们

    2K80
    领券