设为首页收藏本站

 找回密码
 注册
查看: 2007|回复: 2
打印 上一主题 下一主题

请大侠帮修改一个信号闪烁问题 [复制链接]

Rank: 1

精华
0
UID
186184
积分
22
帖子
13
主题
9
阅读权限
10
注册时间
2014-5-6
最后登录
2016-4-3
跳转到指定楼层
1#
发表于 2015-8-12 13:42:40 |只看该作者 |倒序浏览
问题描述:做if1508  1分钟k线  程序出现平仓信号后实盘马上平仓,但信号很可能会在该k线这一分钟内闪烁而消失 则应继续持仓,而实盘已平仓。希望平仓改为“平仓信号在该k线走完后的收盘价信号仍然还在时,平仓交易” 如何改:
//平仓继续
        If(MarketPosition == 1)
        {
                If (High >= EntryPrice + ProfitTarget)
                {
                        Sell(0, Max(Open, EntryPrice + ProfitTarget));
                        Commentary("多头止盈");
                }
                Else If (Highest(High, BarsSinceEntry) >= EntryPrice + MinPBCritical && Close < EntryPrice + MinProfitTarget)
                {
                        Sell(0, Close);
                        Commentary("多头最低止盈");
                }
                Else If (ExitLong)
                {
                        Sell(0, Close);
                        Commentary("多头日内平仓");
                }
                If(OpenPeriod == 1)
                {
                        If (Highest(High, BarsSinceEntry) >= EntryPrice + PBCritical && Close <= Highest(High, BarsSinceEntry) - Drawdown)
                                {
                                        Sell(0, Close);
                                        Commentary("多头回撤止盈");
                                }
                }
                If(Highest(BIAS, BarsSinceEntry) >= 20 && BIAS < 9.5)
                {
                        Sell(0, Close);
                        Commentary("BIAS平多");
                        IsFirBShort = False;
                }
        }
        If(MarketPosition==-1)
        {
                If (Low <= EntryPrice - ProfitTarget)
                {
                        BuyToCover(0, Min(Open, EntryPrice - ProfitTarget));
                        Commentary("空头止盈");
                }
                Else If (Lowest(Low, BarsSinceEntry) <= EntryPrice - MinPBCritical && Close > EntryPrice - MinProfitTarget)
                {
                        BuyToCover(0, Close);
                        Commentary("空头最低止盈");
                }
                Else If (ExitShort)
                {
                        BuyToCover(0, Close);
                        Commentary("空头日内平仓");
                }
                If(OpenPeriod == 1)
                {
                        If (Lowest(Low, BarsSinceEntry) <= EntryPrice - PBCritical && Close >= Lowest(Low, BarsSinceEntry) + Drawdown)
                                {
                                        BuyToCover(0, Close);
                                        Commentary("空头回撤止盈");
                                }
                }
                If(Lowest(BIAS, BarsSinceEntry) <= -20 && BIAS > -9.5)
                {
                        BuyToCover(0, Close);
                        Commentary("BIAS平空");
                        IsFirSShort = False;
                }
        }
       
        If (GetGlobalVar(0) != 888)
                SetGlobalVar(1, 0);//延迟TICK数量
        Else
                SetGlobalVar(1, GetGlobalVar(1) + 1);

Rank: 1

精华
0
UID
210941
积分
14
帖子
9
主题
1
阅读权限
10
注册时间
2015-6-10
最后登录
2020-11-27
2#
发表于 2015-9-7 10:59:16 |只看该作者
Else If (Highest(High, BarsSinceEntry) >= EntryPrice + MinPBCritical && Close[1] < EntryPrice + MinProfitTarget)
                {
                        Sell(0, open);
                        Commentary("多头最低止盈");
                }
下面程序也都这样修改

使用道具 举报

Rank: 1

精华
0
UID
220895
积分
10
帖子
9
主题
1
阅读权限
10
注册时间
2015-10-6
最后登录
2015-11-25
3#
发表于 2015-11-14 15:28:29 |只看该作者
把close 改成 close[1]之后,模型立刻变得没有太多盈利

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

bottom

静态版|手机版|联系我们|交易开拓者 ( 粤ICP备07044698   

GMT+8, 2024-5-10 02:35

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部