以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://222.73.7.161/bbs/index.asp) -- 公式模型编写问题提交 (http://222.73.7.161/bbs/list.asp?boardid=4) ---- 请LEEVOLVO等大侠帮忙解决手动开仓后自动平仓条件代码。 (http://222.73.7.161/bbs/dispbbs.asp?boardid=4&id=5885) |
-- 作者:嘉乐乐 -- 发布时间:2011/3/27 10:53:52 -- 请LEEVOLVO等大侠帮忙解决手动开仓后自动平仓条件代码。 很简单,就是手动开仓后,想自动设置平仓条件为: 开多单的该根K线的前2根K线的最低点为触发条件,此后价格低于开仓前2根K线的最低价,则平仓,否则持有。 开空单的该根K线的前2根K线的最高点为触发条件,此后价格高于开仓前2根K线的最高价,则平仓,否则持有。
看到LEEVOLVO帮人解决这个手动开仓后自动平仓的类似问题, 也想请帮忙把上面的条件转成半自动交易模型,
|
-- 作者:阿火 -- 发布时间:2011/3/27 15:33:08 -- 1,图标交易,还是后台?后台就很容易实现了 2,平仓条件是 价格有达到就算,还是收盘价确认了才算? [此贴子已经被作者于2011-3-27 15:33:30编辑过]
|
-- 作者:嘉乐乐 -- 发布时间:2011/3/27 21:09:26 -- 后台能不能适用所有指定商品,如果行,就用后台。 平仓条件是价格超过1个价位就算。不按收盘价确认。 |
-- 作者:阿火 -- 发布时间:2011/3/27 21:25:04 -- 后台不是很简单? tenterprice这个函数不就符合要求了
tenterprice: 返回上次开仓到当前的周期数,若之前没有开仓记录返回-1 该函数依赖TBUY等交易语句或者在交易监控中的手工干预的成交记录。
开仓K线的前2根,就是 tenterprice+2 所以: if tholding>0 and l<ref(l,tenterprice+2) then tsell(1,1,mkt); if tholding<0 and h>ref(h,tenterprice+2) then tsellshort(1,1,mkt);
注意:开仓的时候要在监控记录里开仓
其它平仓条件自己再加进去。 你的模型应该还有其它平仓条件吧(比如收盘平仓)。要不,每次都亏钱离场,有意义吗 [此贴子已经被作者于2011-3-27 21:26:56编辑过]
|
-- 作者:guotx2010 -- 发布时间:2011/3/27 21:25:20 -- 使用VBS后台就很容易实现,使用Order.HoldingInfoByCode2取得持仓信息,如果有持仓就使用marketdata.GetHistoryData获得最近3根K线的收盘价,然后进行比较,满足条件就平仓。
|
-- 作者:嘉乐乐 -- 发布时间:2011/3/27 22:34:55 -- 你的模型应该还有其它平仓条件吧(比如收盘平仓)。要不,每次都亏钱离场,有意义吗
回复:止盈可以手动平仓。
如果这个功能能实现的话,就非常方便。说明它比文华财经软件强多了。文化财经我问过多次他们的程序员,都说不行,他们说必须配合在自动开仓程序化一起用。不能人工开仓后用程序化平仓。他们还说不能读取开仓数据,所以不能做成手动开仓后程序化平仓。 |
-- 作者:嘉乐乐 -- 发布时间:2011/3/27 22:36:45 -- if tholding>0 and l<ref(l,tenterprice+2) then tsell(1,1,mkt); if tholding<0 and h>ref(h,tenterprice+2) then tsellshort(1,1,mkt);
我是不是只要加这段代码就可以了? 我刚开始对金字塔有兴趣,还没有模拟过呢。 |
-- 作者:阿火 -- 发布时间:2011/3/28 8:21:27 -- 是的。但这是运行于后台的。手动开仓要在 监控里开仓。
文华财经不能实现的各种功能,在金字塔可以轻松实现。
应该帮忙去宣传宣传 [此贴子已经被作者于2011-3-28 8:24:52编辑过]
|
-- 作者:fly -- 发布时间:2011/3/28 9:47:40 -- 4楼笔误了,俺为leevolvo老兄声明下. TENTERBARS: 返回上次开仓到当前的周期数,若之前没有开仓记录返回-1 该函数依赖TBUY等交易语句或者在交易监控中的手工干预的成交记录。 |
-- 作者:xiaofei568 -- 发布时间:2011/6/14 12:06:37 -- 支持手动自动混合交易
标准版的支持吗??
还是需要买180001年的那种版本,太贵了 |