请问ALEX关于变量定义问题 [MC]
-
MC用户求助:
从本质上来说,这两者的区别只是在于变量的初始值不一样,但是,设置不同的初始值可以优化代码。以计算最小价格来说明两个不同的写法带来的区别:
//代码1
var: min_low(0);
if min_low=0 then
min_low=low
else if min_low>Low then
min_low=low;
//代码2
var: min_low(9999); //初始值要设置的比商品合约的价格大很多
if min_low>Low then
min_low=low;
两者的区别在代码中就很明显了。 -
MC回复讨论一:
从本质上来说,这两者的区别只是在于变量的初始值不一样,但是,设置不同的初始值可以优化代码。以计算最小价格来说明两个不同的写法带来的区别:
//代码1
var: min_low(0);
if min_low=0 then
min_low=low
else if min_low>Low then
min_low=low;
//代码2
var: min_low(9999); //初始值要设置的比商品合约的价格大很多
if min_low>Low then
min_low=low;
两者的区别在代码中就很明显了。 -
MC回复讨论二:
第一种是需要再比较一下与0的价格,第二种就不需要了对吗
-
MC回复讨论三:
对的。因为第一种情况,min_low的初始值为0,所以它始终比所有的价格低,如果通过代码2中的代码与价格比较的话,那么最后的结果肯定也是0,这个结果是不正确的。
如果将min_low的初始值设置的足够大,例如9999,那么代码2中的程序第一次执行时就将min_low赋值为当根bar的最小值。 -
MC回复讨论四:
对的。因为第一种情况,min_low的初始值为0,所以它始终比所有的价格低,如果通过代码2中的代码与价格比较的话,那么最后的结果肯定也是0,这个结果是不正确的。
如果将min_low的初始值设置的足够大,例如9999,那么代码2中的程序第一次执行时就将min_low赋值为当根bar的最小值。
有思路,想编写各种指标公式,程序化交易模型,选股公式,预警公式的朋友
可联系技术人员 QQ: 511411198 进行 有偿 编写!(不贵!点击查看价格!)
相关文章
-
没有相关内容