首页
学习
活动
专区
工具
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)来存储和查询数据等。具体产品介绍和链接地址可以参考腾讯云官方网站。

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

相关·内容

没有搜到相关的合辑

领券