关于minmove

沪铝的minmove为什么显示1呢?

我新建了一个公式,把帮助文档中的代码直接复制粘贴,在沪铝2505中运行了一下,结果控制台显示为1,不应该显示为5吗?

制台显示为1,最小变动量应该是5才对呀?

咨询minmove的用法
后复权模式下,MinMove * PriceScale是否要乘rollover
If(MarketPosition <> 1 AND C[1] - O[1] > C + 10* MinMove*PriceScale )
求教MinMove、PriceScale、ContractUnit、BigPointValue的具体概念,他们之间的关系
铁矿石,Print(\\\"1跳:\\\"+Text(minMove));输出的值为什么是5呢?
关于画线的问题
关于套利的问题
关于监控器
关于编写的问题
关于偷价的问题
Events
    OnReady(){
		String tmpCategory = IIFString(Category == Enum_CategoryFutures, "期货", IIFString(Category == Enum_CategoryOptions, "期权", "其他"));
		Print("大类:" + tmpCategory);
		Print("品种:" + SymbolType);
		Print("商品代码:" + Symbol);
		String tmpOption = IIFString(OptionStyle == Enum_EuropeanOption, "欧式", IIFString(OptionStyle == Enum_AmericanOption, "美式", "无行权"));
		Print("行权:" + tmpOption);
        Print("MinMove:" + Text(MinMove()));
    }

用这个诊断代码,跑一下试试,看一下输出结果是啥?

跑出来是螺纹的😨

我明白了。

我是从策略单元里面添加的商品,data0是螺纹,data1是沪铝。

为了方便我把图表调成了只显示沪铝,但实际上data0依然是螺纹,所以公式是在data0的螺纹上跑的,所以minmove是1。

这代码好用,我偷走了😀

不过实话说,TB的数据中心里面有个小Bug,但是这个Bug就像【隐性基因】一样,一般情况下不会显性出来发病。这个Bug就是【沪铝】这个品种的合约属性的模板有2份,分别出现在了【期货合约属性】和【期权合约属性】里面,本来有2个地方出现,也算大问题,问题就出在了2份【合约属性】属性值不一样,其中很巧的是【MinMove】在【期权模板】中的值恰好是1,而不是5。

TB的数据团队在创建【合约模板】【T_al.SHFE】时,一是重复在【期权合约模板】里面创建了【期货合约模板】,二是【沪铝合约模板】的【MinMove】盘口报价比较特殊,创建的时候可能是因为从普通品种的【模板数据】复制来的为1。

牛,太细节了。

最小变动是minmove*pricescale

//------------------------------------------------------------------------

// 简称: demo_minmove

// 名称:

// 类别: 公式应用

// 类型: 用户应用

// 输出: Void

//------------------------------------------------------------------------

Params

//此处添加参数


Vars

//此处添加变量


Defs

//此处添加公式函数

Events

//此处实现事件函数

//初始化事件函数,策略运行期间,首先运行且只有一次

OnInit()

{

}

OnReady()

{

print("--------分隔1--------");

Print("MinMove:" + Text(MinMove()));

print("--------分隔2--------");

Print("PriceScale:" + Text(PriceScale()));

print("--------分隔3--------");

Print("相乘:" + Text(PriceScale*MinMove));

}

//Bar更新事件函数,参数indexs表示变化的数据源图层ID数组

OnBar(ArrayRef<Integer> indexs)

{

}

还是不对呀

已经搞明白了,谢谢。

???为什么我print一下是5?

我也很迷惑,应该是5才对。