以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://222.73.7.161/bbs/index.asp) -- 公式模型编写问题提交 (http://222.73.7.161/bbs/list.asp?boardid=4) ---- refx函数的问题 (http://222.73.7.161/bbs/dispbbs.asp?boardid=4&id=169145) |
-- 作者:m1978xz -- 发布时间:2019/4/2 11:32:48 -- refx函数的问题 我写一个 策略。之后发现虽然买卖代码中写的是在当下收盘价开仓或者平仓。实际主图上的买卖标记(开多或者平多)却显示在26根K线之前。 请问怎么能在最后一根K线当下的收盘价开仓? 然后我使用ref函数,是想让当下的收盘价曲线前移26根K线。请问有什么别的函数可以替代或者达到同样的效果? ------------------------- 转换线:(HHV(H,7)+LLV(L,7))/2,COLORWHITE,LINETHICK2; 迟行线:REFX(C,25),COLORGRAY,LINETHICK2; CC:=REF(迟行线,26); ZZ:=REF(转换线,26); AA:=迟行线>zz; BBB:=迟行线<zz; IF(CC>ZZ AND AA,转换线,DRAWNULL),COLORRED,LINETHICK6; IF(CC<ZZ AND BBB,转换线,DRAWNULL),COLORGREEN,LINETHICK6; //多开 IF HOLDING=0 and CC>ZZ AND AA then begin //若持仓为0,且价格涨破前高 BUY(1,70%,LIMITR,c); //以收盘价买入一手 END //空开 IF HOLDING=0 and CC<ZZ AND BBB then begin //若持仓为0,且价格涨破前高 BUYSHORT(1,70%,LIMITR,c); //以收盘价做空一手 END //平多 IF HOLDING>0 and CC<ZZ AND BBB then begin
//
SELL(1,HOLDING,LIMITR,C); //按前前低价格平多单 end
//平空 IF HOLDING<0 and CC>ZZ AND AA then begin
//
SELLSHORT(1,HOLDING,LIMITR,C); //按前前低价格平多单 end
|
-- 作者:m1978xz -- 发布时间:2019/4/2 11:36:03 -- 需要无视那个代码里边的注释啊。注释是之前写的,没修改成现在的。所以看着没意义。 |
-- 作者:FireScript -- 发布时间:2019/4/2 13:40:18 -- “迟行线” 这个变量是引用未来数据了。而你的开平条件和这个都是挂钩的。这意味着你的信号肯定是在距离现在至少26个K的位置才会出现。而最近的26个K,因为refx引用不到数据的缘故,是不会出现信号的。这个函数是不能用在图表交易系统里面,同样这个函数也没有等效的可用函数。 |
-- 作者:m1978xz -- 发布时间:2019/4/2 13:44:27 -- 感谢版主回复。我现在转换了一下思路,只把refx函数 用于 划线。在开平仓的计算中使用ref函数而不是refx相关的变量。应该就能 解决了。我试试先。 |