设为首页收藏本站

 找回密码
 注册
楼主: 人生如梦
打印 上一主题 下一主题

nopain老大,帮忙给个去掉过多交易信号的模板,好不好! [复制链接]

Rank: 10Rank: 10Rank: 10

精华
20
UID
4
积分
22709
帖子
4802
主题
64
阅读权限
255
注册时间
2007-7-20
最后登录
2024-1-15
1#
发表于 2008-8-4 15:03:01 |显示全部楼层
您的要求就好比要识别盘整和趋势一样,其实这几乎是不可能的。

您需要的是找一个门槛,能够在大多数情况下区分这两种形态。
门槛设得越高,可以过滤更多错误的信号,但是也会越迟缓,看您怎么取舍了

使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
20
UID
4
积分
22709
帖子
4802
主题
64
阅读权限
255
注册时间
2007-7-20
最后登录
2024-1-15
2#
发表于 2008-8-4 16:22:36 |显示全部楼层
Vars
    Numeric MyATR;
Begin
    MyATR = AvgTrueRange(Length);

    if(MyATR< N)
    {
        // 不做交易了
    }

End

使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
20
UID
4
积分
22709
帖子
4802
主题
64
阅读权限
255
注册时间
2007-7-20
最后登录
2024-1-15
3#
发表于 2008-8-5 20:53:55 |显示全部楼层
自己动手,丰衣足食

使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
20
UID
4
积分
22709
帖子
4802
主题
64
阅读权限
255
注册时间
2007-7-20
最后登录
2024-1-15
4#
发表于 2008-8-5 21:19:49 |显示全部楼层
交易系统是一个有机的整体,您说的东西我没法直接写给您啊。

最好把您的想法整理清楚,完整之后,我们在帮您实现吧

使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
20
UID
4
积分
22709
帖子
4802
主题
64
阅读权限
255
注册时间
2007-7-20
最后登录
2024-1-15
5#
发表于 2008-8-6 15:35:04 |显示全部楼层
呵呵,我的交易系统就是一根操盘线,线上买,线下卖,但是在线中间盘整的时候,一定范围内就不要买卖,呵呵!所以要过滤信号!我想要一个以进场价为标准,上下幅度为1%的范围不出现信号 ,或者上下幅度为0.5%的范围不出现信号的公式!还给我加个买入后反向波动1%或0.5%就止损的公式!


根据您的表述,我们假定按照日内结算均价线为您的操盘线,示范如下:
  1. Params
  2.         Numeric Filter(0.5);
  3.         Numeric StopSet(0.5);
  4. Vars
  5.         NumericSeries TotalAmmount;
  6.         NumericSeries TotalVol;
  7.         Numeric AvgLine;
  8.         Bool bInTradeTime;
  9.         NumericSeries UpLine;
  10.         NumericSeries DnLine;
  11.         Numeric MyPrice;
  12.         Numeric TmpStopLine;
  13. Begin
  14.         If(Date!=Date[1])
  15.         {
  16.                 TotalVol = Vol;
  17.                 TotalAmmount = Vol*(High+Low)/2;
  18.         }Else
  19.         {
  20.                 TotalVol = TotalVol[1] + Vol;
  21.                 TotalAmmount = TotalAmmount[1] + Vol*(High+Low)/2;
  22.         }
  23.         AvgLine = TotalAmmount/TotalVol;
  24.         UpLine = AvgLine*(1+Filter*0.01);
  25.         DnLine = AvgLine*(1-Filter*0.01);
  26.        
  27.         // 时间限制
  28.         bInTradeTime = (Time >0.0905 && Time < 0.1430);
  29.         If(MarketPosition != 1 && High >= UpLine && bInTradeTime) // 多头开仓
  30.         {
  31.                 MyPrice = UpLine;
  32.                 If(Open >= UpLine) MyPrice = Open;
  33.                 Buy(1,MyPrice);
  34.         }
  35.        
  36.         If(MarketPosition != -1 && Low <= DnLine && bInTradeTime) // 空头开仓
  37.         {
  38.                 MyPrice = DnLine;
  39.                 If(Open <= DnLine) MyPrice = Open;
  40.                 SellShort(1,MyPrice);
  41.         }       
  42.        
  43.         If(MarketPosition == 1) // 多头止损
  44.         {
  45.                 TmpStopLine = AvgEntryPrice*(1-StopSet*0.01);
  46.                 If( Low <= TmpStopLine)
  47.                 {
  48.                         MyPrice = TmpStopLine;
  49.                         If(Open <= TmpStopLine) MyPrice = Open;
  50.                         Sell(1,MyPrice);
  51.                 }
  52.         }

  53.         If(MarketPosition == -1) // 空头止损
  54.         {
  55.                 TmpStopLine = AvgEntryPrice*(1+StopSet*0.01);
  56.                 If( High >= TmpStopLine)
  57.                 {
  58.                         MyPrice = TmpStopLine;
  59.                         If(Open >= TmpStopLine) MyPrice = Open;
  60.                         BuyToCover(1,MyPrice);
  61.                 }
  62.         }
  63.        
  64.         If(Time >=0.1455) // 收盘平仓
  65.         {
  66.                 Sell(1,Open);
  67.                 BuyToCover(1,Open);
  68.         }
  69. End
复制代码

使用道具 举报

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

bottom

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

GMT+8, 2024-5-20 00:23

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部