下载MetaTrader 5
要添加评论,请登录注册
共享 您的知识。成为众所周知的开发者!
chuntian
75
chuntian 2009.07.18 10:46 

请教MathRand()与MathSrand()具体的用法:


1请问:MathSrand(TimeLocal());这段代码具体表达了什么意思,返回些什么???


2请问: MathRand()返回的是什么?


3请问:如果 MathRand()返回的是一个整数,那么,怎么用公私描述----返回直除以2没有余数那么执行买入---返回直除以2有余数那么执行买出?


有请高人指教,请不要含糊不清,因本人处于学习阶段理解能力偏底中,谢谢。。。。。。。

okwh
1630
okwh 2009.07.19 05:48  

怎么还是不明白?

你应该先去明白什么是随机数,再来使用呀。

MathSrand(TimeLocal()); 设置计算随机数的种子,(这里使用TimeLocal()值做种子) 没有返回。(查查有关随机数发生的数学知识, MT使用的算法需要一个初值做计算起始,)。

MathRand()计算返回一个随机整数(实际叫 伪随机数), 在0到32767的范围内。

但因为交易行为只有三种买 卖 不交易(或者你再加上平仓什么的),但MT计算的数范围在0到32767,  所以 0到32767 要 人为分成相当于1,2,3的三类。

比如随机数是 0~ 32767/3 时 买, 32767/3 ~ 32767*2/3 时不交易, 32767*2/3 ~ 32767 是卖

你也可以多算几次,当做随机,如

MathSrand(TimeLocal());

int x= MathRand(MathRand(MathRand()));

知识参考 http://en.wikipedia.org/wiki/Pseudorandom_number_generator

好奇: 你真以为人类的部分交易行为集合是随机数集合, 还是你以为基于伪随机的行为可以在人类部分交易行为集合中获胜?

keyila
208
keyila 2009.07.19 11:20  
DxdCn 写道 >>

怎么还是不明白?

你应该先去明白什么是随机数,再来使用呀。

MathSrand(TimeLocal()); 设置计算随机数的种子,(这里使用TimeLocal()值做种子) 没有返回。(查查有关随机数发生的数学知识, MT使用的算法需要一个初值做计算起始,)。

MathRand()计算返回一个随机整数(实际叫 伪随机数), 在0到32767的范围内。

但因为交易行为只有三种买 卖 不交易(或者你再加上平仓什么的),但MT计算的数范围在0到32767,  所以 0到32767 要 人为分成相当于1,2,3的三类。

比如随机数是 0~ 32767/3 时 买, 32767/3 ~ 32767*2/3 时不交易, 32767*2/3 ~ 32767 是卖

你也可以多算几次,当做随机,如

MathSrand(TimeLocal());

int x= MathRand(MathRand(MathRand()));

知识参考 http://en.wikipedia.org/wiki/Pseudorandom_number_generator

好奇: 你真以为人类的部分交易行为集合是随机数集合, 还是你以为基于伪随机的行为可以在人类部分交易行为集合中获胜?

感觉 他的想法很牛啊! 不过 要是真随机了 那干嘛不去 拉斯维加斯 豪赌呢! 那样不是更随机 验证随机的速度也快

chuntian
75
chuntian 2009.07.20 13:36  
写道 >>

怎么还是不明白?

你应该先去明白什么是随机数,再来使用呀。

MathSrand(TimeLocal()); 设置计算随机数的种子,(这里使用TimeLocal()值做种子) 没有返回。(查查有关随机数发生的数学知识, MT使用的算法需要一个初值做计算起始,)。

MathRand()计算返回一个随机整数(实际叫 伪随机数), 在0到32767的范围内。

但因为交易行为只有三种买 卖 不交易(或者你再加上平仓什么的),但MT计算的数范围在0到32767,  所以 0到32767 要 人为分成相当于1,2,3的三类。

比如随机数是 0~ 32767/3 时 买, 32767/3 ~ 32767*2/3 时不交易, 32767*2/3 ~ 32767 是卖

你也可以多算几次,当做随机,如

MathSrand(TimeLocal());

int x= MathRand(MathRand(MathRand()));

知识参考 http://en.wikipedia.org/wiki/Pseudorandom_number_generator

好奇: 你真以为人类的部分交易行为集合是随机数集合, 还是你以为基于伪随机的行为可以在人类部分交易行为集合中获胜?

DxdCn 谢谢了,你讲的很详细。。。受教了。。。谢谢。我是想验证一下用随机买卖法交易出来的胜负比例是多少。

okwh
1630
okwh 2009.07.20 15:45  

验证? 恐怕是无法验证的, 一般来说, 随机 的前提是 无限样, 可 我们用于无法达到无限样。最多得到一个大的样集合。

无论胜负,无法保证它是否是随机的因果。

/
要添加评论,请登录注册