public AssetAdjustment CalculateAssetWeight_Raw(OperationSet opSet, DateTime targetDate, MarketDataSet data) { MarketData md = data.GetData(MarketDataSetKey.BokRate); DOHLC dohlc = md.GetData(targetDate); AssetAdjustment ret = null; if (_prevMarketData == null) { ret = new AssetAdjustment(1, 1, 1); } else { double prevValue = _prevMarketData.OHLC.Close; double curValue = dohlc.OHLC.Close; // changed more than 1 bp if (Math.Abs(prevValue - curValue) > 0.01) { double increment = curValue / prevValue - 1; // 금리 변동이 있다. BokRateEvent ev = new BokRateEvent(); ev.TargetIncrement = increment; ev.StartDate = targetDate; ev.EndDate = targetDate.AddYears(kEventDuration); ev.EventKey = _eventKeyGenerator++; ev.UpDown = increment > 0 ? UpDown.Up : UpDown.Down; _events.Add(ev); _lastEvent = ev; } ret = GetIncrement(targetDate); } _prevMarketData = dohlc; return ret; }
public MarketDataTrace(String ticker, DOHLC data) { this.Ticker = ticker; this.CurData = data; }