var STATE_IDLE = 0;
var STATE_LONG = 1;
var STATE_SHORT = 2;
var State = STATE_IDLE;
function Trade(currentState, nextState) {
if (currentState === STATE_IDLE) {
if (nextState === STATE_LONG) {
exchange.SetDirection("buy");
AmountOP = InitAccount.Stocks * 10 / 2;
exchange.Buy(_C(exchange.GetTicker).Sell, AmountOP);
State = STATE_LONG;
}
后面还有其他条件判断执行,也会更改State的值,但为什么一直是0,不会变呢?
崔小猫 代码能完整点吗,这样不能定位问题,你可以输出改变后的值看看有没有,一般调试下就能定位问题了
发明者量化-小小梦 这个看上去很像 Dual Thrust 期货策略, State 没有改变应该是 没有触发 给State 重新赋值的 逻辑。