我最近得到了Raspberry Pi Zero Wifi
,我告诉你这个东西是改变游戏规则的。我之前使用过RasPis
,但由于该设备的占地面积小得多,耗电少,价格便宜且无线上网,因此非常适合低端或物联网项目。
注:目前我已经扩展了机器人以便能够交易以太坊!
我希望它能够在不必太多关注的情况下做事,而我想到的第一件事就是:
为什么不创建一个可以自动进行比特币和以太坊的简单交易机器人。
这个想法很简单:Raspberry Pi Zero
使用Coinbase API
定期检查价格,并在有意义的时候购买和销售比特币。你应该能够给它一个预算,看看能用它做些什么。
这个机器人是一个潜伏数周或数月的潜伏者,并等待一个很棒的比特币价格购买和出售。这取决于你如何使用它!
机器人应该能够做什么:
- 我希望你买50欧元的比特币,当50欧元变成52欧元时卖掉。
- 当比特币价格达到1000欧元/比特币时,我希望你买100欧元的比特币,当这100欧元的比特币价值150欧元时卖掉。
- 买低,卖高。
- 在下一个泡沫破裂的时候自动购买比特币。
机器人不会做什么:
- 进行市场分析并检测泡沫和暴跌。
- 让你富有。
- 做大量交易。这个机器人是一个缓慢的潜伏投资者。
出于控制原因,我希望每当出售或购买BTC/ETH时都会收到通知。为此,我使用一个简单的webhook为我最喜欢的(和自主)聊天平台rocket.chat。但它也适用于Slack
的webhook
!
这是PHPTrader机器人。
我们需要什么让它运行:
- 一个Raspberry Pi或只是Linux盒子。
- Coinbase帐户,包含有一些资金的欧元/美元钱包。
- PHP 5或更高版本。
- PHP Composer安装库。
- 如果你想有通知,你需要一个rocket.chat或Slack webhook。
第1步:安装机器人
它很简单:
- 使用命令
git clone https://github.com/chrisiaut/phptrader.git
下载repo或下载为ZIP文件。 - 进入php交易者目录
cd phptrader
。 - 安装所需的composer文件
composer install
。 - 将
example.config.inc.php
重命名为config.inc.php
。
第2步:输入Coinbase API密钥和密钥
获得你的钥匙也很容易:
- 1.输入
https://www.coinbase.com/settings/api
。 - 2.点击
+ New API Key
。 - 3.然后,你将看到API密钥创建对话框。选择比特币/以太坊和欧元/美元钱包。
- 4.选择所有权限。
- 5.提交。
当你看到API key
和API secret
时,请在config.inc.php
文件中COINBASE_KEY
和COINBASE_SECRET
下的PHPTrader bot输入它们。
警告:保密API key
和API secret
,当攻击者获得访问权限时,就像交了你的房门钥匙一样。
第3步(可选):设置rocket.chat或Slack webhook
对于Slack,请使用本教程来获取webhook
。 并将其填入config.inc.php
中的ROCKETCHAT_WEBHOOK
字段中:
注意:你需要成为管理员才能为rocket.chat
设置webhook
。托管你的实例(使用Docker非常容易)或者请信任的管理员为你执行此操作。
- 1.在聊天实例上,转到
Administration -> Integrations
- 2.单击
New Integration
,然后单击Incoming WebHook
- 3.将其设置为
enabled
,选择发布频道或用户。 - 4.点击
Save Changes
现在将看到一个Webhook URL
,将其复制并放入config.inc.php
中的ROCKETCHAT_WEBHOOK
字段中就ok了。
最后一步:告诉机器人什么时候买卖
使用以下命令,机器人将创建一个transacitons.json
文件,其中将保存欧元,BTC,起始价格和卖出价格的金额,以便我们可以在重新启动时跟踪它们。
- php trader.php buy [amount in EUR] [sell when price increases by EUR]
- php trader.php sell [amount in EUR] [sell when this BTC/ETH price is reached]
- php trader.php order [amount in EUR] [sell when price increases by EUR] [buy at BTC/ETH price]
例子:
- 在BTC/ETH买入10欧元,当它们价值12欧元时出售:
php trader.php buy 10 2
。 - 添加卖单。当BTC/ETH价格达到2000时卖出100欧元/美元:
php trader.php sell 100 2000
。 - 当1BTC/ETH价值1000欧元时添加100欧元的买单,当100欧元价值110欧元时卖出:
php trader.php order 100 10 1000
。
设置完成后,你可以启动看门狗:机器人的核心是无限循环,定期(每10秒)检查一次价格变化。你可以使用命令php trader.php watchdog
自行启动它,或者使用start.sh
脚本将该进程置于后台并登录到/var/log/phptrader.log
。
./start.sh
或者
nohup php trader.php watchdog >> /var/log/phptrader.log 2> /var/log/phptrader.err &
你可以查看日志文件,以便查看机器人目前正在执行的操作:
======================================================================
这个软硬结合的教程,有点儿挑战,如果你希望纯PC实战学习PHP与以太坊开发,推荐个我们的教程:
php以太坊,主要是介绍使用php进行智能合约开发交互,进行账号创建、交易、转账、代币开发以及过滤器和事件等内容。
其他区块链教程:
- C#以太坊,主要讲解如何使用C#开发基于.Net的以太坊应用,包括账户管理、状态与交易、智能合约开发与交互、过滤器和事件等。
- web3j教程,主要是针对java和android程序员进行区块链以太坊开发的web3j详解。
- 以太坊教程,主要介绍智能合约与dapp应用开发,适合入门。
- 以太坊开发,主要是介绍使用node.js、mongodb、区块链、ipfs实现去中心化电商DApp实战,适合进阶。
- python以太坊,主要是针对python工程师使用web3.py进行区块链以太坊开发的详解。
- EOS智能合约与DApp开发入门教程,内容涵盖EOS工具链、账户与钱包、发行代币、智能合约开发与部署、使用代码与智能合约交互等核心知识点,最后运用react和各知识点完成一个便签DApp的开发。
汇智网原创翻译,转载请标明出处。这里是原文
来源:oschina
链接:https://my.oschina.net/u/2275217/blog/2050564