设为首页收藏本站

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

关于昨天在北京陈总讲的随机交易的写法 [复制链接]

Rank: 4

精华
0
UID
14998
积分
400
帖子
65
主题
10
阅读权限
50
注册时间
2010-7-31
最后登录
2011-5-26
跳转到指定楼层
1#
发表于 2010-9-13 09:18:21 |只看该作者 |倒序浏览
开盘就交易,多或空随机产生,收盘就平仓。主要是多空交易随机产生怎么写啊?
丰富

Rank: 10Rank: 10Rank: 10

精华
2
UID
4130
积分
20906
帖子
6519
主题
17
阅读权限
200
注册时间
2009-4-15
最后登录
2019-4-12
2#
发表于 2010-9-13 12:51:39 |只看该作者
使用函数rand取得随机数

使用道具 举报

Rank: 4

精华
0
UID
14998
积分
400
帖子
65
主题
10
阅读权限
50
注册时间
2010-7-31
最后登录
2011-5-26
3#
发表于 2010-9-13 12:53:37 |只看该作者
好的谢谢管理员,我先试试了
丰富

使用道具 举报

Rank: 4

精华
0
UID
14998
积分
400
帖子
65
主题
10
阅读权限
50
注册时间
2010-7-31
最后登录
2011-5-26
4#
发表于 2010-9-13 14:46:31 |只看该作者
怎么把这个程序完善为每天只开仓一次进行测试
Params
        Numeric ExitOnCloseMins(14.55);        
        Numeric lossper(0.08);//定义止损额度0.8%
Vars
        NumericSeries DayOpen;
        Numeric MyPrice;
        Numeric Stoploss;
        Numeric n;

Begin
        DayOpen = OpenD(0);
        Stoploss=DayOpen*lossper;
                n= rand(0,3 );
if (MarketPosition==0)
{
if (n<=1){
buy(1,dayopen);
}
if (n>=2){
SellShort(1,dayopen);
}
}

     

        If(MarketPosition == 1){
                SetStopLoss(1,Stoploss, False);
        }

        If(MarketPosition == -1){
             SetStopLoss(1,Stoploss, False);
                }
      

        If(Time >= ExitOnCloseMins / 100){
                Sell(1, Open);
                BuyToCover(1, Open);
        }

        SetExitOncLOSE;
End
丰富

使用道具 举报

Rank: 4

精华
0
UID
14998
积分
400
帖子
65
主题
10
阅读权限
50
注册时间
2010-7-31
最后登录
2011-5-26
5#
发表于 2010-9-13 16:19:38 |只看该作者
搞定了,但除了限制交易时间外,还有没有其他方法限制,只开仓一次啊?
丰富

使用道具 举报

Rank: 5Rank: 5

精华
0
UID
4740
积分
1247
帖子
251
主题
9
阅读权限
60
注册时间
2009-6-29
最后登录
2019-3-30
6#
发表于 2010-9-13 17:20:51 |只看该作者
可以的。设置一个标记,Bool序列型的就可以, 开仓之前判断一下真和假,如果是假则开仓,同时赋值为真。
需要在每一个BAR得到前一个BAR的值。

使用道具 举报

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

bottom

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

GMT+8, 2024-5-20 22:45

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部