首页
学习
活动
专区
工具
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 在股市上的作用很小,它无法得出准确的价格趋势。...有时候,也可能会设定一个比较居中的值,比如在涉及到做空的策略中。我们也可以选择更极端的阈值,如20和80。不过,这要求具备专业知识,或者在回测时尝试。

1.6K22
  • 用matplotlib和pandas绘制股票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行定义计算MACD的calMACD方法和DrawMACD.py范例程序中的同名方法也完全一致,但在最后的第15行,是通过return语句返回整个df对象,而不是返回仅仅包含MACD指标的相关列,这是因为...以股票RSI指标为例,学习Python发送邮件功能(含RSI指标确定卖点策略) 以预测股票涨跌案例入门基于SVM的机器学习 用python的matplotlib和numpy库绘制股票K线均线和成交量的整合效果

    4.2K10

    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....支持 MACD、RSI、KDJ、BOLL 四个指标 6....支持自定义的指标显示方式 ikvStockChart这个库附带的sample有:默认左滑右滑加载、禁用左滑右滑加载、多个指标共同联动显示、在 Fragment 中使用、带有下拉刷新的需求中使用、横竖屏切换

    4.2K20

    freqtrade 学习笔记

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

    6.1K613

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

    在进行外贸交易时,本国货币与交易国的货币价值对比,决定了企业的利润。如果货币价值突然下降,那么企业最终可能会亏损。 对于小公司而言,它们在处理处理货币风险问题时会担心货币波动产生的高成本。...例 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 价格。

    80830

    MA:移动平均线(Moving Average);平滑异同移动平均线(MACD)

    平滑异同移动平均线(MACD) 是一种趋势跟踪动量指标,它显示了两个指数移动平均线(EMA)之间的关系。...这两个EMA通常是短期(如12天)和长期(如26天)的EMA,它们之间的差值(DIF)被用作MACD线,而DIF的9天EMA则被称为信号线(DEA)或触发线。...计算MACD柱状图 MACD柱状图=(DIF-DEA)×2,但有的计算方法中MACD可能不是简单的(DIF-DEA)×2,而是基于前一日的DIF和MACD值进行迭代计算,如MACD=(当日的DIF-昨日的...然而,由于篇幅限制和计算复杂性,这里无法给出完整的5日数据计算过程和结果。在实际应用中,可以使用股票分析软件或Excel等工具进行更详细和准确的计算。...因为这意味着短期EMA已经超过了长期EMA,并且两者之间的差距正在扩大,表明股票可能处于上涨趋势中。

    17210

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

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

    67310

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

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

    81021

    币聪财经-币安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手以上。

    45940

    BackTrader 中文文档(二十二)

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

    50200

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

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

    2.9K30

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

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

    45721

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

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

    2.3K20

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

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

    1.7K50

    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)。

    39910

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

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

    1.1K80

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

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

    1.4K81

    【独家】周志华教授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% 单独利用多粒度扫描和级联森林 由于多粒度扫描和级联森林模块是相当独立的,因此可以单独使用它们。

    2.2K80
    领券