广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python中怎么提高比特币的回报率
  • 113
分享到

Python中怎么提高比特币的回报率

2023-06-15 13:06:54 113人浏览 薄情痞子

Python 官方文档:入门教程 => 点击学习

摘要

这期内容当中小编将会给大家带来有关python中怎么提高比特币的回报率,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。交叉指标在金融背景下,黄金交叉和死亡交叉指标是一个衍生的的移动平均线,也被称为交叉指标。

这期内容当中小编将会给大家带来有关python中怎么提高比特币的回报率,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

交叉指标

在金融背景下,黄金交叉和死亡交叉指标是一个衍生的的移动平均线,也被称为交叉指标。

例如移动平均线,这两个交叉指标中的任何一个将通过使用以下公式对特定时间段内的市场收盘价进行平均来计算。

Python中怎么提高比特币的回报率

在以上公式中,n对应于使用的周期数

该概念将包括组合两个移动平均值(短期和长期)以获得加密货币趋势。当短期移动均线超过或回顾长期移动均线时,将出现买入或卖出信号。

数学上讲,如果您选择5个周期的短期移动平均线和20个周期的长期移动平均线,则我们将通过以下条件获得买入信号:

Python中怎么提高比特币的回报率

MA(5)和MA(20)分别等于:

Python中怎么提高比特币的回报率

Python中怎么提高比特币的回报率

CPrice对应于收盘价值

这些交叉指标是方程式的一部分,可帮助检测所研究的加密货币的全球趋势。这些CI(交叉指标)在全球范围内被多个交易者和基金广泛使用,以定义支撑,阻力位 ,  止损和目标并了解潜在趋势。

现在我们已经涵盖了一些背景知识,让我们开始测试,看看它们如何帮助预测市场。如果要以相同的速度编写代码,则需要事先安装一些配置和程序包。

先决条件

在开始之前,您需要在计算机上安装Python 3版本和以下软件包:

  • pandas

  • NumPy

  • Yfinance

  • Plotly(这个您可以自主选择安装与否)

如果尚未安装这些软件包中的任何一个,则可以使用pip命令,如下所示。

pip install yfinance pip install plotly

一旦确保安装了以下软件包,我们就可以从我们的数据管道和数据模型开始。

数据管道和建模

现在,我们已经确认以上软件包已安装在我们的机器中,我们可以定义数据处理了。

数据模型将分为3个不同的步骤:

  1. 鸿蒙官方战略合作共建——HarmonyOS技术社区

  2. 我们将使用Yahoo Finance api查询实时加密货币的数据。

  3. 定义一个时间段,为我们的计算字段创建新列,然后每秒更新这些值。

  4. 实时绘制此图,并检查我们的信号是否准确。

Python中怎么提高比特币的回报率

现在我们可以开始编码了!(如果您已经有使用Python的经验,则可以跳到第二步。)

第一步:导入所需软件包

您将开始使用以下代码行导入以前安装的软件包:

# Raw Package import numpy as np import pandas as pd  #Data Source import yfinance as yf  #Data viz import plotly.graph_objs as Go

上面的行是查询numpy,pandas,yfinance和要导入的图

第二步:获取实时市场数据

现在,所需的不同软件包已被上传。我们将以BTC-USD对为例,通过Yahoo Finance API设置导入,可以扩展加密货币选择的列表以及货币。

例如,如果您来自印度或加拿大,则可以使用INR或CAD;如果您来自印度或加拿大,则可以使用INR或CAD。两者都将正常运行,以及您是否需要Ripple或Ethereum数据。

第三步:回到我们的API结构

Yahoo Finance API将按此顺序需要三个强制性参数:

  • 股票代码(1)

  • 开始日期+结束日期或期间(2)

  • 间隔(3)

对于我们的情况,股票代码(参数1)将为BTC-USD对。此外,在此示例中,我们将选择最后7天作为时间段(参数2)。并设置一个间隔(参数3)的90分钟。

要调用数据,您将必须使用以下结构:

Python中怎么提高比特币的回报率

上面描述了获取我们感兴趣的数据的结构

快速查找可能的时间间隔

我想快速介绍一下您可以使用yahoo finance API设置的不同间隔。

下面详细列出了可能需要的间隔可能性:

Python中怎么提高比特币的回报率

上面列出了可以选择的不同间隔。

现在我们已经定义了三个参数,让我们执行查询并检查输出:

data = yf.download(tickers='BTC-USD',period = '8d', interval = '90m')

上面的行将向Yahoo Finance API请求BTC-USD。

这是您必须获得的输出:

Python中怎么提高比特币的回报率

每隔90分钟输出一次市场

现在,我们已经下载并存储了数据,我们可以继续并定义移动平均线,买卖信号。

部署我们的算法

现在,我们的实时数据已经下载并存储在名为“ data”的变量中。下一步包括计算我们的移动平均线并设置我们的买入和卖出信号。

我们将需要创建以下计算字段:

  • 马(5)

  • 马(20)

为此,我们将使用Python中包含的滚动函数来获取n个最新周期的平均值。关于MA(5),我们将在过去90分钟的最后5分钟内应用我们的策略。这意味着我们将计算最近7小时30分钟(5次乘以90分钟)的平均收盘价。

Python中怎么提高比特币的回报率

对于MA(20),我们将使用滚动功能,但我们将计算20个最近周期的平均值,而不是计算5个最近的90分钟周期。

因此,让我们在Python上进行编码:

#Moving average using Python Rolling function data['MA5'] = data['Close'].rolling(5).mean() data['MA20'] = data['Close'].rolling(20).mean()

上面的代码行使用Python滚动功能获取移动平均值

上面的代码一旦执行,将为您的数据框创建2个新列,如下所示:

Python中怎么提高比特币的回报率

现在您已经定义了波段,必须创建2个额外的列。

我们终于可以部署我们的策略并对其进行测试。在下图中,我将绿色标记为良好的预测,将黑色预测为错误的预测。

Python中怎么提高比特币的回报率

带有买卖信号的预期输出

现在您可以在家开发它了:

# Raw Package import numpy as np import pandas as pd #Data Source import yfinance as yf #Data viz import plotly.graph_objs as go  #Importing market data data = yf.download(tickers='BTC-USD',period = '8d', interval = '90m')  #Adding Moving average calculated field data['MA5'] = data['Close'].rolling(5).mean() data['MA20'] = data['Close'].rolling(20).mean()  #declare figure fig = go.Figure()  #Candlestick fig.add_trace(go.Candlestick(x=data.index,                 open=data['Open'],                 high=data['High'],                 low=data['Low'],                 close=data['Close'], name = 'market data'))  #Add Moving average on the graph fig.add_trace(go.Scatter(x=data.index, y= data['MA20'],line=dict(color='blue', width=1.5), name = 'Long Term MA')) fig.add_trace(go.Scatter(x=data.index, y= data['MA5'],line=dict(color='orange', width=1.5), name = 'Short Term MA'))  #Updating X axis and graph # X-Axes fig.update_xaxes(     rangeslider_visible=True,     rangeselector=dict(         buttons=list([             dict(count=3, label="3D", step="days", stepmode="backward"),             dict(count=5, label="5d", step="days", stepmode="backward"),             dict(count=7, label="WTD", step="days", stepmode="todate"),             dict(step="all")         ])     ) )  #Show fig.show()

上述就是小编为大家分享的Python中怎么提高比特币的回报率了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注编程网Python频道。

--结束END--

本文标题: Python中怎么提高比特币的回报率

本文链接: https://www.lsjlt.com/news/280329.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Python中怎么提高比特币的回报率
    这期内容当中小编将会给大家带来有关Python中怎么提高比特币的回报率,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。交叉指标在金融背景下,黄金交叉和死亡交叉指标是一个衍生的的移动平均线,也被称为交叉指标。...
    99+
    2023-06-15
  • python怎么提高图片的分辨率
    要提高图片的分辨率,可以使用Python的图像处理库,如PIL(Pillow)或OpenCV。下面是使用PIL库来提高图片分辨率的示...
    99+
    2023-09-20
    python
  • Python中提高代码效率技巧是怎么样的
    这篇文章将为大家详细讲解有关Python中提高代码效率技巧是怎么样的,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。对象相等。您认为type(a) == type(b)和type(a) is ...
    99+
    2023-06-17
  • python中怎么返回特定的时间
    本篇文章为大家展示了python中怎么返回特定的时间,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。返回特定时间下方的 which_date() 函数实现返回某一起始时间后特定一段时间的日期。特定的一...
    99+
    2023-06-03
  • 47%的MongoDB数据库遭黑客比特币勒索,你中招了吗?中招怎么办?
    7月2日消息:近2.3万个MongoDB数据库遭黑客攻击勒索特币赎金,几乎占MongoDB数据库的47%。黑客要求每个数据库2天内支付0.015 BTC(约合140美元),否则泄露其数据。如何解决此类数据安全问题?本文为...
    99+
    2021-06-28
    47%的MongoDB数据库遭黑客比特币勒索,你中招了吗?中招怎么办?
  • Go语言中除法运算的效率怎么提高
    本文小编为大家详细介绍“Go语言中除法运算的效率怎么提高”,内容详细,步骤清晰,细节处理妥当,希望这篇“Go语言中除法运算的效率怎么提高”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。近年来,Go语言在程序员中的人...
    99+
    2023-07-06
  • 为什么使用Python中的numpy和django可以提高开发效率?
    Python是一种广泛应用的编程语言,尤其在数据分析和Web开发领域中非常受欢迎。Python中有许多优秀的库和框架,其中numpy和django被广泛应用于数据分析和Web开发中。本文将探讨使用numpy和django可以提高开发效率的原...
    99+
    2023-11-01
    numpy django numy
  • 电商网站中怎么提高商品详情页的转化率
    这篇文章主要介绍电商网站中怎么提高商品详情页的转化率,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!一般我们说的商品详情页通常会包含下面这几点基本信息:商品图片商品内容介绍商品价格信息这三点是商品详情页中必不可少的信息...
    99+
    2023-06-10
  • 怎么在一个千万级的数据库查询中提高查询的效率
    小编给大家分享一下怎么在一个千万级的数据库查询中提高查询的效率,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!在实际项目中,当数据...
    99+
    2022-10-18
  • Python中NumPy库的优势是什么?如何使用它来提高数据分析的效率?
    随着数据分析的广泛应用,数据科学家们在处理数据时需要使用各种工具和库。Python是其中一个非常流行的语言,它的开源生态系统中有很多优秀的数据处理库。其中,NumPy库是一个非常重要的数据处理库,它提供了高效的多维数组和矩阵运算功能。本文...
    99+
    2023-09-15
    关键字 数据类型 numy
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作