以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://222.73.7.161/bbs/index.asp) -- 公式模型编写问题提交 (http://222.73.7.161/bbs/list.asp?boardid=4) ---- [求助]请老师帮忙编写一下 (http://222.73.7.161/bbs/dispbbs.asp?boardid=4&id=174752) |
-- 作者:樱桃丸子 -- 发布时间:2020/3/4 11:09:07 -- [求助]请老师帮忙编写一下 刚接触金字塔不久还是一个编程小白,只能编写简单的开平仓语句稍微复杂一些的就无计可施了,还请老师帮忙。 主要是想完成一个跟进止损与加仓,比如开多为例: ma1:ref(ma(c,n),1); ma2:ref(ma(c,m),1); ma3:ref(ma(c,x),1); qptj:ref(llv(l,t),1); 开多条件1:cross(ma1,ma2); 开多条件2:cross(ma1,ma3); 平仓条件:cross(qptj,C); 当满足开多条件1开多仓X手,初始止损为X手开仓价的-2%,在持仓状态下满足开仓条件2同时满足初始仓位浮盈1%,再次开多仓Y手,初始止损为Y手开仓价的-2%。 止盈: 浮盈=(开仓后的最高价-开仓价)*x% X手开仓后最高价大于X手开仓价位浮盈的+2%并且最低价小于浮盈的1.5%,止盈,开仓后最高价大于开仓价位浮盈的+4%,并且最低价小于浮盈的1%,止盈, 开仓后最高价大于开仓价位浮盈+6%,并且最低价小于浮盈的0.5%,止盈。Y手的止盈同上并且分别管理。 止损: 满足平仓条件平掉所有仓位。X.Y手开仓后的初始止损的唯一条件为开仓价的-2%,当平仓条件大于开仓价位才可启动平仓条件。 请老师帮忙写一下,万分感激。 |
-- 作者:wenarm -- 发布时间:2020/3/4 13:15:40 -- 1、当平仓条件大于开仓价位才可启动平仓条件??? 平仓条件不是0 就是1,除非行情价格小于1,否者可能成立。 2.多次开仓后,开仓价不好处理。建议考虑使用持仓均价。
|
-- 作者:樱桃丸子 -- 发布时间:2020/3/4 14:47:48 -- 1. 那持仓均价是否就变成了仓位的统一管理? 2. 如果按持仓均价是否能实现仓位的分别管理? 请老师帮忙按持仓均价编写一下,平仓条件按无条件执行。谢谢!
|
-- 作者:FireScript -- 发布时间:2020/3/4 15:04:50 -- " 浮盈=(开仓后的最高价-开仓价)*x% X手开仓后最高价大于X手开仓价位浮盈的+2%并且最低价小于浮盈的1.5%,止盈,开仓后最高价大于开仓价位浮盈的+4%,并且最低价小于浮盈的1%,止盈, 开仓后最高价大于开仓价位浮盈+6%,并且最低价小于浮盈的0.5%,止盈。Y手的止盈同上并且分别管理。 " 这部分建议再说明下吧。 没看太明白 你这里怎么算止盈的方法的。还有就行你好几个地方都用了变量x,这几个x都是一个含义? |
-- 作者:樱桃丸子 -- 发布时间:2020/3/4 15:25:15 -- ma1:ref(ma(c,10),1); ma2:ref(ma(c,30),1); ma3:ref(ma(c,60),1); qptj:ref(llv(l,60),1); 开多条件1:cross(ma1,ma2); 开多条件2:cross(ma1,ma3); 平仓条件:cross(qptj,C); 浮盈=上次开仓之后的最高价-上次开仓价的差值回撤2% 我是这样表示的:fy1:=hhv(h,enterbars+2)>=enterprice*0.02+enterprice and l<=(enterprice*0.02+enterprice)-((enterprice*0.02+enterprice-enterprice)*0.15); 不知对不对。 |
-- 作者:wenarm -- 发布时间:2020/3/4 16:26:23 -- 1,你自己策略的加仓操作,没法完全体现分仓状态、 2.我们试试看再说吧。
3.手开仓后最高价大于X手开仓价位浮盈的+2%并且最低价小于浮盈的1.5%,止盈,开仓后最高价大于开仓价位浮盈的+4%,并且最低价小于浮盈的1%,止盈, 开仓后最高价大于开仓价位浮盈+6%,并且最低价小于浮盈的0.5%,止盈。Y手的止盈同上并且分别管理。
这短话,存在逻辑问题。手开仓后最高价大于X手开仓价位浮盈的+2%并且最低价小于浮盈的1.5%肯定是包含后面的4% 6%的几组条件。所以如果后面的执行,那么第一个2%肯定是满足条件,并且已经执行过了。
或者说,前者条件范围包含和之后的几组条件。
[此贴子已经被作者于2020/3/4 16:27:09编辑过]
|
-- 作者:樱桃丸子 -- 发布时间:2020/3/4 17:00:27 -- 通俗讲应该是达到一个分级止盈的目的:比如如果开多仓后价格上升至开仓价的2%,即跟进止损设在开仓价与现价的价差盈利的回撤1.5%位置,如果继续上涨了4%未触及跟进止损价 则跟进止损放到了开仓价与现价价差的盈利的回撤1%位置。也就是随着价格逐步缩紧跟进止损。加仓后的仓位也是如此执行,不同的是分开管理的。最后的全部qptj是管理全部仓位即价格 下穿qptj全部平仓。
|
-- 作者:wenarm -- 发布时间:2020/3/4 17:27:11 -- 你用带入法理一下逻辑,应该就知道我的意思了。 按照你上面的意思,执行过程中肯定先2% 后4%。在2%的位置仓位就被干掉了。除非你多个条件直接组合后比较苛刻(苛刻的情况下,2和4都不一定会满足。)。
分段处理的原则是多段之间条件没有交叉存在包含关系才行。
|
-- 作者:樱桃丸子 -- 发布时间:2020/3/4 18:20:13 -- 老师,之前一直是文华手工操作,目前这个方法也一直在用,思路应该是没错的,只是想尝试改用金字塔软件苦于是个编程小白,才刚刚开始学习。 |
-- 作者:樱桃丸子 -- 发布时间:2020/3/4 18:40:01 -- [求助]请老师帮忙编写一下 上传了图片显示上传成功怎么看不到呀, [此贴子已经被作者于2020/3/4 18:41:03编辑过]
|