以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (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=1768) |
-- 作者:devcon -- 发布时间:2010/6/5 18:36:17 -- 如何使交易连线的颜色和每笔交易的盈亏对应? 在轮回版主的例程里,有交易连线的写法: DRAWLINE(ENTERLONG,OPEN,EXITLONG,OPEN,0,COLORRED,LINETHICK3,VTSOLID); 实现的效果是,开多到平多画红线,开空到平空画绿线。 想把效果改为:无论开多或开空,该笔交易盈利则画红线,亏损就画绿线。试了两种写法: 一 DrawLine(BuyCon,MyPrice,SellCon,MyPrice,0,IF(Ref(MyPrice,BarsLast(BuyCon))<MyPrice,ColorRed,ColorGreen),LineThick1,VTSolid);
二 DrawLine(BuyCon,MyPrice,SellCon,MyPrice,0,IF(NumWinTrade>Ref(NumWinTrade,1),ColorRed,ColorGreen),LineThick1,VTSolid);
都无法达到目的。 写法一的效果仍然是多头交易画红线,空头交易画绿线,写法二的效果看不出规律。 烦请版主点评一下或给个思路? 多谢! [此贴子已经被作者于2010-6-5 18:41:32编辑过]
|
-- 作者:admin -- 发布时间:2010/6/5 19:35:58 -- 你可以考虑使用BUY,SELL等新交易系统指令,然后使用OPENPROFIT函数做,看看效果如何 |
-- 作者:devcon -- 发布时间:2010/6/5 22:47:34 -- 已经使用了buy/sell指令,用openprofit在部分交易上连线颜色符合要求,但不是全部,原因应该是在历史bar上,浮动盈亏应该是用close计算的,实际交易的价格是盘中的某个价格,所以,在某个历史bar上,可能按close计算的浮盈>0,画了红线,但按出场的价位计算是亏的,应该是绿线。 颜色参数用了条件判断,以空头交易为例,在平空的bar上进行判断:IF(Ref(MyPrice,BarsLast(SellCon))>MyPrice,ColorRed,ColorGreen),逻辑上应该没问题,如果开空价高于平空价,就是盈利交易(暂不考虑佣金开销),线色用红色,否则用绿色。但是就是达不到效果,不知道是不是DrawLine语句的颜色参数不能用IF条件判断? |
-- 作者:admin -- 发布时间:2010/6/5 23:08:21 -- 那你试试使用ENTERPRICE,在本地平仓信号出现后,比较平仓价格,然后画线 |