Type/to search

单点狙击高频加仓自动反手解套算法 V1.2

High-frequency
6
Follow
942
Followers

先开仓,指定一个盈利点平仓,如果平不了,超过止损点,就再加仓拉低成本价, 一直加到盈利出场,如果加仓加到没钱或者币再加了,就开始反手做,原来是做空的,就反手做多,这样一直反复. 也可以不让自动反手,让程序一直等着解套.

比如现在10元均价开的多仓,目标盈利是5毛钱,程序挂一个10.5元卖出的单,如果价格跌了,就加仓到当前价格的附近,调整均价,再挂一个目标盈利单, 如果还不行,继续加仓拉低均价,实在不行,被套了,就反手开始做空单.

策略的自动反手机制

如果当前做多仓, 盈利出局,会自动再做多仓,如果被套,反手拿币做空仓, 空仓盈利后,继续做空仓,一直到加仓加不动了,反手开始做多仓,这样一直循环. 只要上次是盈利的就一直保持着上次的开仓方向
策略会自动计算需要加仓的量的大小跟目标盈利点的新值
需要注意的

此策略有完整的恢复机制,可以实际操作或者学习使用
此策略100%赚钱的前提是: 你得准备好足够的资金加仓
如果没有足够的资金,就让自动反手做, 会产生浮动盈亏
如果你有足够的资金,就不需要自动反手了,一直让程序加仓就可以
策略可以通过调整参数,实现高频的盘口型策略
不适合期货,期货这样搞容易爆仓, 所以只能现货来操作
开源的目的

吸引更多的人加入到量化交易这个交流圈子里来,而不是整天的闭门造车

V1.1 解决了OKCoin冻结0.0001个币导致程序卡住的bug

更详细的说明, 移步: https://www.fmz.com/#!/bbs-topic/38

Source
JavaScript

var TradeType = OpType == 0 ? ORDER_TYPE_BUY : ORDER_TYPE_SELL;
var OrgAccount = null;
var Counter = {s : 0, f: 0};
var LastProfit = 0;
var AllProfit = 0;
var LastTicker = null;
function _N(v, precision) {
    if (typeof(precision) != 'number') {
        precision = 4;
    }
    var d = parseFloat(v.toFixed(Math.max(10, precision+5)));
Strategy parameters
Strategy parameters
首次开仓方向
开仓数量
开仓方式
挂单失效距离
下单滑动价(元)
开仓最大单次下单量
加仓间距(元)
加仓均价目标(元)
平仓目标(元)
轮询间隔(秒)
恢复进度
持仓方向
持仓均价
持仓数量
上次盈利
保存本地日志
自动反手
最小交易币数
Comment
All comments (9)

    在zb交易,开多仓完成,挂了一个买单和卖单,买单已经完成了,提示“发现账户有冻结的钱或币 ”,然后就卡住了,买单在zb的app和调试工具中看到都是完成的,不知道什么原因??

    7 years ago

    請問為什麼勝率為100%,但預估收益是负值? img

    7 years ago

    胜率是只有交易了才能统计胜率, 预估收益不管有没有交易都去计算按市价平仓后的收益

    7 years ago

    請問為什麼勝率為100%,但預估收益是负值?

    7 years ago

    @zero 如图所示,每次加仓后下的单,都是以成本价来+- ¥2 来下单,由于成本摊薄的速度肯定比市价波动慢,这不就会造成频繁加仓的问题吗?恕我愚钝,没想明白
    img

    11 years ago

    波动的时候,会频繁加仓的, 此策略回撤也是很大的.

    11 years ago

    原来如此,我明白了,的确,我跑了一阵,收益不稳定,想你说的回撤很大,那怎么改进呢,可否点拨一下,提供个思路,我会一点编程,有兴趣折腾一下

    11 years ago

    @zero 大神,我想问一下,为什么第二次加仓下单的价格不是以当前市价+-,而是当前成本价来+-,是故意为之还是笔误

    11 years ago

    是成本价,为了严格控制持仓成本. 市价下单会造成不可控.

    11 years ago
  • 1
iPhone Download
Forums
PINE Language
© 2015 - ∞ INVENTOR PTE LTD (SG)