以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp) -- 策略编写求助区 (http://weistock.com/bbs/list.asp?boardid=11) ---- [求助]几种卖出策略,求大侠帮忙做代码 (http://weistock.com/bbs/dispbbs.asp?boardid=11&id=7093) |
-- 作者:okmijn365 -- 发布时间:2011/7/4 15:59:31 -- [求助]几种卖出策略,求大侠帮忙做代码 1 以买入价为准,5%后日线收盘卖出。 2 以买入价为准,3个交易日后卖出。
看起来是简单得要死,可是我自己编的代码是有问题的。却又未发现问题所在。请各位大侠给出正确的。谢谢。 我的代码: runmode:0; input:a(105,100,199); variable:lastp=0; if c<o then begin buy(holding=0,100%,thisclose);//如果收盘小于开盘 且 空仓 就在该日收盘位全仓买入。 lastp:=c; end;
if c/lastp>(a/100) then begin
具体实施的时候,卖出价位十分不准,有时到了5%不卖,之后要么在15%才卖出要么一直持仓。试了很多都是这样,就不举具体例子了、
|
-- 作者:26327756l -- 发布时间:2011/7/4 16:23:11 -- 加粗语句改动,试试是否正确。 runmode:0; input:a(105,100,199); variable:lastp=0; if c<o then begin buy(holding=0,100%,thisclose);//如果收盘小于开盘 且 空仓 就在该日收盘位全仓买入。 lastp:=c; end; [此贴子已经被作者于2011-7-4 16:32:11编辑过]
|
-- 作者:jinzhe -- 发布时间:2011/7/4 16:45:53 -- runmode:0;
if c<o then begin buy(holding=0,100%,thisclose);//如果收盘小于开盘 且 空仓 就在该日收盘位全仓买入。
if c/enterprice>=1.05 then begin
这样看起来简单点 |
-- 作者:fly -- 发布时间:2011/7/4 16:56:02 -- 您这个公式,是想在日K线上运行的,如果用K线走完的话,就会到第2天才会发出委托.所以,推荐用固定时间间隔,注意事项:防止信号闪烁
//以下用固定时间间隔. runmode:0;
if c<o then begin //-开仓条件这里,楼主自己注意编写,此条件不再更改 buy(holding=0,100%,thisclose);//如果收盘小于开盘 且 空仓 就在该日收盘位全仓买入。 end
if enterbars>3 or (enterbars>0 and l>enterprice*1.05) then begin //换成以最低价为标准与开仓均价比较,防止信号闪烁. sell(holding>0,100%,thisclose);//如果持仓且最低价大于买入价5%,则全仓卖出。 end [此贴子已经被作者于2011-7-4 16:59:02编辑过]
|
-- 作者:okmijn365 -- 发布时间:2011/7/4 23:11:44 -- 谢谢! |