-
Notifications
You must be signed in to change notification settings - Fork 225
机器人使用指南
机器人灵感来自:https://bitcointalk.org/index.php?topic=60501
下面是我自己的一些理解,澄清疑问,作为用户指南,限于本人水平有限,热血鼓励大家一起探讨。
本文将介绍如下内容: 机器人的原理,使用场景,使用策略,算法,以及局限性。为什么有时高买低卖,为什么不能卖在最高点,为什么不能买在最低点,为什么不能完全依赖自动化,但是又为什么要使用它。
机器人的原理
- 投资与投机
投资者:那些比特币的忠实信徒,你对比特币的概念及未来充满信心,你买入并坚定的持有,你是一个投资者。
投机者/交易者:根据价格的变化,通过买入和卖出在比特币交易市场赚取利润的人。
如果你是投资者,下面的你都不需要看了。
用@比特天空网 的犀利点评作为开头:
_所谓自动化交易,有2种解释,一种是代替人的手工下单,为大户和庄家的操盘必备工具,那就非常棒了,我也需要,买卖山寨币能把人愁死;另一种解释,是程序自己判断买卖点赚钱,那就别想了,如果程序自己都会赚钱了,那就真的是终结者了。_
- 预测与反应
预测--这是QQ群里的庄托、VIP群的群主,论坛的跳大神,卖广告拉你入伙的人用的惯用伎俩,因为很多人努力的想预测价格的点位,他们听信消息,听信预测,对预测热情似火!
但是作为交易者,从来不预测点位,只对技术事件进行反应,即根据移动平均线交叉进行交易,而不是去浪费时间猜测(好听点叫预测)价格会到那里。我没有任何能力确切的知道明天、下周或明年价格会是多少,但是在我进入这个市场开始这个交易游戏**之前**,我已经做好计划,我知道当价格变化波动时如何操作。
一句话,作为交易者,根据事件(金叉死叉,压力阻力)做出反应,而不是预测点位。
- 买入点与卖出点
假设你设置短周期EMA为10,长周期EMA为21,当EMA10上穿EMA21时,叫金叉,买入;当EMA21下穿EMA10时,叫死叉,卖出。
- EMA指数移动平均线背后的逻辑:
指数移动平均线EMA给你指明价格的趋势方向,在交易中,我们用EMA来跟踪趋势或者发现支撑与压力位,我在程序中用EMA来给出趋势信号或趋势方向。当趋势向上时,短期EMA穿过长期EMA。当趋势向下时,长期EMA穿过短期EMA。 一般我会用10/21,因为经过测试这个组合不会生成相对太多或太少趋势信号。
- 为什么不选择交易中心的简单移动平均线SMA,EMA比SMA有什么优势?
与简单移动平均线相比,指数移动平均线为近期的价格赋予较大的权重.
今天EMA=昨天的EMA+加权因子*(当天的收盘价-昨天的EMA)= 加权因子*当天的收盘价+(1-加权因子)*昨天的EMA
加权因子=2/(N+1);
N就是上面所说的周期 ,比如周期10 则加权的因子就是 2/11;
- 关于技术分析
你会听到关于技术分析的各种不同声音,比如”技术分析真他妈的好“,”技术分析错误百出,一坨屎“等等迥异的观点。事实上,技术分析仅仅是一种工具而已,”nothing more, nothing less“,如果你理解怎么去使用它,技术分析可以帮助你获取利润。正如其他很多工具一样,如果你不花时间去学习怎么去用它,那将给你带来痛苦和羞辱。
就我来说,我相信技术分析是从BTC交易市场获取利润的一种有效方法。
交易系统开发实现目标
1.开发一个系统,解决如下人性问题:
- 什么时候进入市场?金叉进入
- 每次交易额是多少?动态设置
- 什么时候退出市场?包含止盈退出和止损退出。 死叉退出
- 交易周期是多长?动态配置
2.后向测试:
利用k线的历史数据对上面的系统进行验证
3.前向测试:
历史测试只代表过去的效果,但是我们必须验证交易系统的未来效果 我用两个月的时间小金额实盘测试验证了交易系统是可以辅助盈利的结论。
4.实盘测试:
我现在更加理解了我的交易系统,我明白了为什么有时高买低卖,有时低买高卖,为什么不能卖在最高点,为什么不能买在最低点,因为那代表下降趋势,横盘趋势,上升趋势的在技术指标上的反应,以及技术指标的钝化。
我的操作方式是:
下跌趋势,空仓;横盘,小额;上升,全仓。如何区分这些?我基本用Fabonacci线做出箱体,所谓箱体也基本就是压力位与支撑位。有时也划一根下降和上升阻力线。一定要配合成交量。另外,果盘基本90%的时间是跟着外盘走,mtg死后,跟着bitstamp走。还有一个就是大的托单和压单,基本会引起市场情绪化波动,此时可快速操作满仓,快速斩仓,而这些操作的所有信心就是即使买错卖错,操作不够快,也有来自交易系统的二次止盈止损保护。说到这,你应该明白,机器人只是辅助我的判断,我的操作。他只是给我买入信号,卖出信号。他帮助我做止损,止盈。他的作用就是让我知道何时买入,何时退出。
我研究了几乎市面上所有的机器人,包含不限于,
cryptrade,nodejs开源
BufferBot,chrome,代码做了混淆
还有一个python的,忘名字了。
我研究了5分钟动量,看了@比特天空网的民主货币帖子, Goomboo的分析,另外研究了一下外汇的技术分析方法,
以及其他的技术分析方法,如KDJ,RSI,TREND,MACD,2PERCENT
上面的算法,研究后都类似EMA,所以归根结缔,所有的算法都类似EMA,程序最后砍掉所有的其他算法,只保留EMA crossover算法,
其他算法请看相应源代码文件,目前并没有在代码库中删除。
最后,你明白了跑这个程序闭着眼就能赚钱吗?
我的答案是不能。
之前市场大牛市时,只要周期设成日线,那我这个程序100%赚钱,后向测试可发现盈利700%多,可是那是牛市的巧合罢了,正所谓那只是牛市的历史。对于未来,无法预测,但是在金叉与死叉之间,就是我手工操作的范围,我因为有机器人的保护,一直在从市场获取利润,机器人帮我做的只是去掉我的恐惧与贪婪,就这样。
写完之后,发现有人说你这是方法论,我们还需要软件使用操作的具体步骤,那个,我改天再写,码字太痛苦了,不过你不明白我上面写的,你也会发现高买低卖,所以你们先好好体会下原理,明白软件的局限。
我从来不认为程序是万能的,因为我才是程序“心”中的上帝!
程序是死的,人是活的,结合起来,交易才更加美好,你懂的!
FAQ:
1.可以扩展到山寨币的robot吗?
我不玩山寨币,所以没做,不过简单啊。
2.可以扩展到Okcoin,btcchina吗?
更新:已支持huobi,okcoin的BTC/LTC,btcchina成交量太小,没有提供。将来会加入bitstamp,btc-e
3.程序结构太复杂啊,能解释下?
程序分为后台交易线程和web服务器线程
后台:
分为K线数据采集部分,数据配置部分,数据整理部分,交易算法部分,API调用部分, 后向测试报告输出部分,邮件通知部分等等。
web:
golang内置的http服务器,HTML+JQuery+HighStock+Bootstrap
有的人说程序也很简单。
简单就是复杂,复杂就是简单,那要在谁的眼中:)好绕啊。。。哈哈哈
今天先写到这里。
BTC捐赠地址:1NDnnWCUu926z4wxA3sNBGYWNQD3mKyes8
LTC捐赠地址:LXwX5XeZeVfXM2b4GRs6HM1mNn4K9En3F4
hello friends I'm here to give you people a good news our company is giving give away free Bitcoin come and get your own free bitcoin contact us through our company email bitcoininvestment733@gmail.com