Skip to main content

一种自动平衡加密货币投资组合的工具

项目描述

加密货币投资组合平衡器

使用风险自负。这交易真钱。不提供任何保证

一个可以连接到加密货币交易所并购买/出售加密货币以将您的投资组合平衡器保持在一定比例的脚本。如果您需要使用静态 IP 地址,此分支支持使用代理。

此分叉用于 Xponential 加密:https ://xcryptofund.io

安装

通过点:

pip install crypto_reflex

通过来自 Github 的源代码:

git clone https://github.com/draczer01/Crypto_Reflex.git
cd crypto_reflex
virtualenv --python=python3 .
. bin/activate
pip install -r requirements.txt
pip install -e .

在您的项目中使用该库

from crypto_reflex.crypto_reflex_lib import crypto_reflex_lib # import the ligrary
cryptoReflex = crypto_reflex_lib
rebalance = cryptoReflex("binance", "{\"XRP\": 40.0, \"XLM\": 20.0, \"BTC\": 10.0, \"ETH\": 10.0, \"BNB\": 10.0, \"USDT\": 10.0}", "API_KEY", "API_SECRET", 0.2)
print(rebalance) # prints the output in JSON

JSON 中的返回示例:

{"portfolio_value": 3.8687923544999996, "currency": "USDT", "cost": "0.002321"}

错误代码

在您的项目中使用该库时,您可能会遇到以下状态:

0:不需要再平衡 1:再平衡成功 2:目标格式无效 3:目标分配不正确 4:找不到更好的投资组合,请稍等重试

例子:

{"status": 1, "message": "Total target needs to equal 100, it is 98"}

配置

如果您将其用作库,则此方法不适用 创建一个配置文件,config.ini其中包含您的交易所和投资组合百分比的定义,以及需要重新平衡的阈值(百分比)。包含一个示例配置文件,config.ini.example但您只需要以下内容:

[binance]
api_key = <api key>
api_secret = <api secret>
threshold = 2.0
targets = XRP 40
          BTC 20
	  ETH 20
	  BNB 10
	  USDT 10

默认情况下,它以 USDT 为投资组合的值,这可以通过--valuebase参数进行更改。

要配置代理,只需创建一个名为PROXY_URL

要获取以 JSON 格式返回的数据,只需使用:--json

跑步

对 Binance 进行空运行(实际上不交易)

$ crypto_reflex binance
Connected to exchange: binance

Current Portfolio:
  XRP    3272.28  (39.92 / 40.00%)
  BTC    0.14     (20.05 / 20.00%)
  ETH    3.85     (20.02 / 20.00%)
  BNB    22.81    ( 9.99 / 10.00%)
  USDT   262.48   (10.02 / 10.00%)

  Total value: 2619.40 USDT
  Balance error: 0.043 / 0.08

No balancing needed

强制它重新平衡,无论是否需要:

$ crypto_reflex --force binance
Connected to exchange: binance

Current Portfolio:
  XRP    3272.28  (39.92 / 40.00%)
  BTC    0.14     (20.04 / 20.00%)
  ETH    3.85     (20.02 / 20.00%)
  BNB    22.81    ( 9.99 / 10.00%)
  USDT   262.48   (10.02 / 10.00%)

  Total value: 2619.28 USDT
  Balance error: 0.042 / 0.08

Balancing needed [FORCED]:

Proposed Portfolio:
  XRP    3278.51  (40.00 / 40.00%)
  BTC    0.14     (20.04 / 20.00%)
  ETH    3.83     (19.95 / 20.00%)
  BNB    22.81    ( 9.99 / 10.00%)
  USDT   262.48   (10.02 / 10.00%)

  Total value: 2619.28 USDT
  Balance error: 0.032definition
  Total fees to re-balance: 0.00199 USDT

Orders:
  BUY 6.2279674364331195 XRP/ETH @ 0.00234478

如果需要,让它实际执行交易:

$ crypto_reflex --force --trade binance
Connected to exchange: binance

Current Portfolio:
  XRP    3272.28  (39.96 / 40.00%)
  BTC    0.14     (20.04 / 20.00%)
  ETH    3.84     (19.94 / 20.00%)
  BNB    22.94    (10.04 / 10.00%)
  USDT   262.48   (10.02 / 10.00%)

  Total value: 2619.01 USDT
  Balance error: 0.043 / 0.08

Balancing needed [FORCED]:

Proposed Portfolio:
  XRP    3272.28  (39.96 / 40.00%)
  BTC    0.14     (20.04 / 20.00%)
  ETH    3.85     (20.00 / 20.00%)
  BNB    22.80    ( 9.98 / 10.00%)
  USDT   262.48   (10.02 / 10.00%)

  Total value: 2619.01 USDT
  Balance error: 0.031 / 0.08
  Total fees to re-balance: 0.001592 USDT

Orders:
  Submitted: sell 0.13 BNB/ETH @ 0.08422

自动运行

您可以通过在您的 crontab 文件中添加以下内容(调整您的路径和电子邮件地址),将其设置为在 unix 系统上的 cron 作业中运行:

MAILTO=matt@example.com
*/5 * * * * OUTPUT=`cd /home/matt/crypto_reflex; bin/crypto_reflex --trade binance`; echo "$OUTPUT" | grep -q "No balancing needed" || echo "$OUTPUT"

这将每 5 分钟运行一次脚本,并且只有在发生某些平衡(或错误)时才会向您发送电子邮件。

项目详情


下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源分布

crypto_reflex-1.0.2.tar.gz (7.0 MB 查看哈希)

已上传 source