网赚论坛

标题: 带你进入量化世界之-----MACD双向操作滑动止损代码分析 [打印本页]

作者: 896868112    时间: 2018-1-13 15:47
标题: 带你进入量化世界之-----MACD双向操作滑动止损代码分析
上一篇文章中我们大家领略了?30行代码的精简量化策略,本篇中作者将一步一步带领量化初学者更近一步地去发掘量化策略设计的乐趣。
正文继续,本次依然是用BTC的现货交易讲解,作者之前在金融、投资、证券等方面也完全是小白一枚。甚至都搞不懂期货的交易流程,
更是被眼花缭乱、听所未闻的名词、术语搞的头昏脑涨,(其实现在也是略懂!略懂!)。通过自己百度、查资料等一一补脑。
查阅了相关内容,心中有了基本的概念,结合自己略懂的JS语言,简单写了一个。最初不懂什么是K线、均线、MACD指标。
在这里简单说下,K线是记录一定周期内的市场行情,便于观察市场动态。均线是上一篇文章用到的指标,和MACD指标一样,都是反映市场行情趋势的指标。
这2种指标的概念、算法、公式推导等就不一一赘述了。不明白的请查百度。(我就是在百度看的!)

代码中有以下全局变量,老规矩,先一一解释,老鸟可忽略。[td]
变量名初始值说明
Interval2000这个变量是轮询周期,就是程序暂停等待的时间量,单位是毫秒,1000毫秒为1秒,所以这个变量初始值为2秒。
STATE_FREE0这个是一个表示状态的变量,表示空闲。用于状态判断。
STATE_BUY1这个是一个表示状态的变量,表示多头持仓。 就是 买开仓。
STATE_SELL2状态变量,表示空头持仓。 就是卖开仓。
ORDER_INVALID3持仓状态变量,表示未持仓。
ORDER_VALID4表示持仓中…
stateSTATE_FREE状态变量,用空闲状态初始化。
SignalDelay0最初计划 信号延迟,暂时无用。
stopProfit0.002这个变量比较重要,止损率, 比如 本金 * 止损率(0.002) 表示 最多赔 本金的0.002倍,损失上限。
step0.5滑动止损的步长值。用于提升、下调 止损价的等级。
opAmount1固定的操作量。
profit0盈亏。

复制代码


代码看累了,喝口水歇歇~流程图直观些~上图!
先说说关于滑动止损的原理。图片右边,再大致看下 程序执行流程。


大家可以先跑跑回测实验一下,记得要引用“数字货币交易类库”这个模板!另外写的简陋欢迎指正、修改。
代码纯属学习、交流使用,实盘慎用!
参考资料







欢迎光临 网赚论坛 (http://www.caifuba.net/) Powered by Discuz! X3.1