public ProcessController_KtbSkel(double downBoundary, double upBoundary, long notional, STR_KtbSkel parent)
        {
            this.DownBoundary = downBoundary;
            this.UpBoundary = upBoundary;
            this.MaxNotional = notional;

            this.Parent = parent;
            this.FutureAccount = this.Parent.FutureAccount;

            this.MonitorExit = new MonitorExit_KtbSkel(this);
            this.SortedPositionStack = new SortedPositionStack_KtbSkel(this, this.Parent.GetStrategyName(),
                parent.SpotCode, parent.FutureCode, notional, DownBoundary, UpBoundary);

            _processState = new ProcessState_Default(this);
        }
 public void Run(double indicator, RawMarketData spotRmd, RawMarketData futureRmd)
 {
     _processState = _processState.Run(indicator, spotRmd, futureRmd);
 }