//------------------------------------------------------------------------------ // // Этот код создан программой. // Исполняемая версия:4.0.30319.42000 // // Изменения в этом файле могут привести к неправильной работе и будут потеряны в случае // повторной генерации кода. // //------------------------------------------------------------------------------ namespace TSLab.User { using System; using TSLab.Script; public sealed class Script : System.IDisposable { private TSLab.Script.Handlers.Options.OptionBase OptionBase_h = new TSLab.Script.Handlers.Options.OptionBase(); private TSLab.Script.Handlers.Options.OptionSeriesByNumber NearOptStream_h = new TSLab.Script.Handlers.Options.OptionSeriesByNumber(); private TSLab.Script.Handlers.Options.PositionsManager PosMan_h = new TSLab.Script.Handlers.Options.PositionsManager(); private TSLab.Script.Handlers.Options.BasePx2 FutPx_h = new TSLab.Script.Handlers.Options.BasePx2(); private TSLab.Script.Handlers.Options.TimeToExpiry dT_h = new TSLab.Script.Handlers.Options.TimeToExpiry(); private TSLab.Script.Handlers.Options.CentralStrike CentralStrike_h = new TSLab.Script.Handlers.Options.CentralStrike(); private TSLab.Script.Handlers.Options.AutoHedger AutoHedge_h = new TSLab.Script.Handlers.Options.AutoHedger(); private TSLab.Script.Handlers.Options.SingleSeriesProfile MktProfile_h = new TSLab.Script.Handlers.Options.SingleSeriesProfile(); private TSLab.Script.Handlers.Options.NumericalDeltaOnF3 DeltaATM_h = new TSLab.Script.Handlers.Options.NumericalDeltaOnF3(); private TSLab.Script.Handlers.Options.SmileImitation5 GlobalSmile_h = new TSLab.Script.Handlers.Options.SmileImitation5(); private TSLab.Script.Handlers.Options.ExchangeTheorSigma5 exSmileRescaled_h = new TSLab.Script.Handlers.Options.ExchangeTheorSigma5(); private TSLab.Script.Handlers.Options.TransformSmile WrapSmile_h = new TSLab.Script.Handlers.Options.TransformSmile(); private TSLab.Script.Handlers.Options.SingleSeriesNumericalDelta3 DeltaProfile_h = new TSLab.Script.Handlers.Options.SingleSeriesNumericalDelta3(); private TSLab.Script.Handlers.Options.TotalRiskN2 TotalRiskN2_h = new TSLab.Script.Handlers.Options.TotalRiskN2(); private TSLab.Script.Handlers.ConstGen MaxRisk_h = new TSLab.Script.Handlers.ConstGen(); private TSLab.Script.Handlers.Options.SingleSeriesPositionGrid QtyCalls_h = new TSLab.Script.Handlers.Options.SingleSeriesPositionGrid(); private TSLab.Script.Handlers.Options.SingleSeriesPositionGrid QtyPuts_h = new TSLab.Script.Handlers.Options.SingleSeriesPositionGrid(); private TSLab.Script.Handlers.Options.SingleSeriesPositionGrid QtyTotal_h = new TSLab.Script.Handlers.Options.SingleSeriesPositionGrid(); private TSLab.Script.Handlers.Options.OptionSeriesByNumber2 NearOptions_h = new TSLab.Script.Handlers.Options.OptionSeriesByNumber2(); private TSLab.Script.Handlers.Options.TotalProfit TotalProfit_h = new TSLab.Script.Handlers.Options.TotalProfit(); private TSLab.Script.Handlers.Options.IvSmile2 IVAsks_h = new TSLab.Script.Handlers.Options.IvSmile2(); private TSLab.Script.Handlers.Options.IvSmile2 IVBids_h = new TSLab.Script.Handlers.Options.IvSmile2(); private TSLab.Script.Handlers.Options.CurrentFutPx CurrFutPx_Smile_h = new TSLab.Script.Handlers.Options.CurrentFutPx(); private TSLab.Script.Handlers.Options.TransformSmile Market_h = new TSLab.Script.Handlers.Options.TransformSmile(); private TSLab.Script.Handlers.Options.TransformSmile Model_h = new TSLab.Script.Handlers.Options.TransformSmile(); private TSLab.Script.Handlers.Options.SingleSeriesProfile ModelProfile_h = new TSLab.Script.Handlers.Options.SingleSeriesProfile(); private TSLab.Script.Handlers.Options.SetViewport SetSmileViewport_h = new TSLab.Script.Handlers.Options.SetViewport(); private TSLab.Script.Handlers.Options.GetValueAtm IV_ATM_h = new TSLab.Script.Handlers.Options.GetValueAtm(); private TSLab.Script.Handlers.Options.BlackScholesSmile2 BlacSchoSmil_h = new TSLab.Script.Handlers.Options.BlackScholesSmile2(); private TSLab.Script.Handlers.Options.SingleSeriesProfile ExpiryProfile_h = new TSLab.Script.Handlers.Options.SingleSeriesProfile(); private TSLab.Script.Handlers.ConstGen ZeroDT_h = new TSLab.Script.Handlers.ConstGen(); private TSLab.Script.Handlers.Options.SetViewport SetPositionViewport_h = new TSLab.Script.Handlers.Options.SetViewport(); private TSLab.Script.Handlers.Options.CurrentFutPx CurrFutPx_Pos_h = new TSLab.Script.Handlers.Options.CurrentFutPx(); private TSLab.Script.Handlers.Options.SeriesSelector SeriesSelector_h = new TSLab.Script.Handlers.Options.SeriesSelector(); private TSLab.Script.Handlers.Options.BuyOptions BuyOptions_h = new TSLab.Script.Handlers.Options.BuyOptions(); private TSLab.Script.Handlers.Options.SellOptions SellOptions_h = new TSLab.Script.Handlers.Options.SellOptions(); private TSLab.Script.Handlers.ConstGen AlwaysAllow_h = new TSLab.Script.Handlers.ConstGen(); private TSLab.Script.Handlers.ConstGen One_h = new TSLab.Script.Handlers.ConstGen(); private TSLab.Script.Handlers.ConstGen Zero_h = new TSLab.Script.Handlers.ConstGen(); private TSLab.Script.Handlers.Options.QuoteIv QuoteIv_h = new TSLab.Script.Handlers.Options.QuoteIv(); private TSLab.Script.Handlers.Options.ShowIvTargets ShowLongTargets_h = new TSLab.Script.Handlers.Options.ShowIvTargets(); private TSLab.Script.Handlers.Options.ShowIvTargets ShowShortTargets_h = new TSLab.Script.Handlers.Options.ShowIvTargets(); public TSLab.Script.Optimization.BoolOptimProperty PosMan_BlockTrading = new TSLab.Script.Optimization.BoolOptimProperty(true, false); public TSLab.Script.Optimization.BoolOptimProperty PosMan_DropVirtualPos = new TSLab.Script.Optimization.BoolOptimProperty(false, false); public TSLab.Script.Optimization.BoolOptimProperty PosMan_UseVirtualPositions = new TSLab.Script.Optimization.BoolOptimProperty(true, false); public TSLab.Script.Optimization.OptimProperty FutPx_DisplayPrice = new TSLab.Script.Optimization.OptimProperty(120000, true, 1, 10, 1, 1); public TSLab.Script.Optimization.OptimProperty dT_Time = new TSLab.Script.Optimization.OptimProperty(0.08, true, 1, 10, 1, 1); public TSLab.Script.Optimization.OptimProperty CentralStrike_DisplayPrice = new TSLab.Script.Optimization.OptimProperty(120000, true, 1, 10, 1, 1); public TSLab.Script.Optimization.IntOptimProperty CentralStrike_ShiftStrike = new TSLab.Script.Optimization.IntOptimProperty(0, false, -10000000, 10000000, 1); public TSLab.Script.Optimization.OptimProperty CentralStrike_StrikeStep = new TSLab.Script.Optimization.OptimProperty(0D, false, 0D, 10000000D, 1D, 1); public TSLab.Script.Optimization.OptimProperty GlobalSmile_IvAtmPct = new TSLab.Script.Optimization.OptimProperty(30.0, false, 0.000001, 10000.0, 0.01, 1); public TSLab.Script.Optimization.BoolOptimProperty GlobalSmile_SetIvByHands = new TSLab.Script.Optimization.BoolOptimProperty(false, false); public TSLab.Script.Optimization.BoolOptimProperty GlobalSmile_SetShapeByHands = new TSLab.Script.Optimization.BoolOptimProperty(false, false); public TSLab.Script.Optimization.BoolOptimProperty GlobalSmile_SetSlopeByHands = new TSLab.Script.Optimization.BoolOptimProperty(false, false); public TSLab.Script.Optimization.OptimProperty GlobalSmile_ShapePct = new TSLab.Script.Optimization.OptimProperty(0.0, false, -10000.0, 10000.0, 0.01, 1); public TSLab.Script.Optimization.OptimProperty GlobalSmile_SlopePct = new TSLab.Script.Optimization.OptimProperty(-10.0, false, -10000.0, 10000.0, 0.01, 1); public TSLab.Script.Optimization.IntOptimProperty ModelProfile_NodesCount = new TSLab.Script.Optimization.IntOptimProperty(0, false, 0, 1000000, 1); public TSLab.Script.Optimization.StringOptimProperty ModelProfile_TooltipFormat = new TSLab.Script.Optimization.StringOptimProperty("0", false); public TSLab.Script.Optimization.OptimProperty DeltaProfile_SigmaMult = new TSLab.Script.Optimization.OptimProperty(7D, false, 0D, 1000000D, 1D, 3); public TSLab.Script.Optimization.OptimProperty DeltaATM_Delta = new TSLab.Script.Optimization.OptimProperty(0, true, 1, 10, 1, 1); public TSLab.Script.Optimization.BoolOptimProperty DeltaATM_HedgeDelta = new TSLab.Script.Optimization.BoolOptimProperty(false, false); public TSLab.Script.Optimization.BoolOptimProperty DeltaATM_PrintDeltaInLog = new TSLab.Script.Optimization.BoolOptimProperty(false, false); public TSLab.Script.Optimization.OptimProperty AutoHedge_BuyShift = new TSLab.Script.Optimization.OptimProperty(0D, false, -1000000D, 1000000D, 1D, 1); public TSLab.Script.Optimization.OptimProperty AutoHedge_DownDelta = new TSLab.Script.Optimization.OptimProperty(-1.0, false, -1000000.0, 0, 1.0, 1); public TSLab.Script.Optimization.BoolOptimProperty AutoHedge_HedgeDelta = new TSLab.Script.Optimization.BoolOptimProperty(false, false); public TSLab.Script.Optimization.OptimProperty AutoHedge_MinPeriod = new TSLab.Script.Optimization.OptimProperty(0D, false, 0D, 1000000D, 1D, 1); public TSLab.Script.Optimization.OptimProperty AutoHedge_SellShift = new TSLab.Script.Optimization.OptimProperty(0D, false, -1000000D, 1000000D, 1D, 1); public TSLab.Script.Optimization.OptimProperty AutoHedge_SensitivityPct = new TSLab.Script.Optimization.OptimProperty(66D, false, 50D, 100D, 1D, 1); public TSLab.Script.Optimization.OptimProperty AutoHedge_TargetDelta = new TSLab.Script.Optimization.OptimProperty(0.0, false, -1000000.0, 1000000.0, 1.0, 1); public TSLab.Script.Optimization.OptimProperty AutoHedge_UpDelta = new TSLab.Script.Optimization.OptimProperty(-1.0, false, 0, 1000000.0, 1.0, 1); public TSLab.Script.Optimization.IntOptimProperty MktProfile_NodesCount = new TSLab.Script.Optimization.IntOptimProperty(0, false, 0, 1000000, 1); public TSLab.Script.Optimization.StringOptimProperty MktProfile_TooltipFormat = new TSLab.Script.Optimization.StringOptimProperty("0", false); public TSLab.Script.Optimization.OptimProperty TotalRiskN2_DisplayRisk = new TSLab.Script.Optimization.OptimProperty(0, true, -1000000, 1000000, 1, 3); public TSLab.Script.Optimization.OptimProperty MaxRisk_Value = new TSLab.Script.Optimization.OptimProperty(5D, false, 1D, 10D, 1D, 1); public TSLab.Script.Optimization.StringOptimProperty QtyCalls_TooltipFormat = new TSLab.Script.Optimization.StringOptimProperty("0", false); public TSLab.Script.Optimization.StringOptimProperty QtyPuts_TooltipFormat = new TSLab.Script.Optimization.StringOptimProperty("0", false); public TSLab.Script.Optimization.StringOptimProperty QtyTotal_TooltipFormat = new TSLab.Script.Optimization.StringOptimProperty("0", false); public TSLab.Script.Optimization.OptimProperty TotalProfit_Profit = new TSLab.Script.Optimization.OptimProperty(0, true, 1, 10, 1, 1); public TSLab.Script.Optimization.BoolOptimProperty IV_ATM_RepeatLastValue = new TSLab.Script.Optimization.BoolOptimProperty(false, false); public TSLab.Script.Optimization.OptimProperty IV_ATM_Result = new TSLab.Script.Optimization.OptimProperty(5, false, 1, 10, 1, 1); public TSLab.Script.Optimization.IntOptimProperty ExpiryProfile_NodesCount = new TSLab.Script.Optimization.IntOptimProperty(0, false, 0, 1000000, 1); public TSLab.Script.Optimization.StringOptimProperty ExpiryProfile_TooltipFormat = new TSLab.Script.Optimization.StringOptimProperty("0", false); public TSLab.Script.Optimization.StringOptimProperty SeriesSelector_OptionSeries = new TSLab.Script.Optimization.StringOptimProperty("NULL", false); public TSLab.Script.Optimization.IntOptimProperty BuyOptions_EntryShift = new TSLab.Script.Optimization.IntOptimProperty(0, false, -1000000, 1000000, 1); public TSLab.Script.Optimization.IntOptimProperty BuyOptions_ExitShift = new TSLab.Script.Optimization.IntOptimProperty(0, false, -1000000, 1000000, 1); public TSLab.Script.Optimization.IntOptimProperty BuyOptions_FixedQty = new TSLab.Script.Optimization.IntOptimProperty(1, false, 0, 1000000, 1); public TSLab.Script.Optimization.BoolOptimProperty QuoteIv_CancelAllLong = new TSLab.Script.Optimization.BoolOptimProperty(false, false); public TSLab.Script.Optimization.BoolOptimProperty QuoteIv_CancelAllShort = new TSLab.Script.Optimization.BoolOptimProperty(false, false); public TSLab.Script.Optimization.BoolOptimProperty QuoteIv_ExecuteCommand = new TSLab.Script.Optimization.BoolOptimProperty(false, false); public TSLab.Script.Optimization.IntOptimProperty QuoteIv_Qty = new TSLab.Script.Optimization.IntOptimProperty(0, false, -1000000, 1000000, 1); public TSLab.Script.Optimization.OptimProperty QuoteIv_ShiftIvPct = new TSLab.Script.Optimization.OptimProperty(0D, false, -10000000D, 10000000D, 1D, 1); public TSLab.Script.Optimization.StringOptimProperty QuoteIv_Strike = new TSLab.Script.Optimization.StringOptimProperty("120 000", false); public TSLab.Script.Optimization.BoolOptimProperty SetSmileViewport_ApplyVisualSettings = new TSLab.Script.Optimization.BoolOptimProperty(false, false); public TSLab.Script.Optimization.OptimProperty SetSmileViewport_XAxisDivisor = new TSLab.Script.Optimization.OptimProperty(1000D, false, 1E-09D, 10000000D, 1D, 1); public TSLab.Script.Optimization.OptimProperty SetSmileViewport_XAxisStep = new TSLab.Script.Optimization.OptimProperty(5000D, false, 1E-09D, 10000000D, 1D, 1); public TSLab.Script.Optimization.BoolOptimProperty SetPositionViewport_ApplyVisualSettings = new TSLab.Script.Optimization.BoolOptimProperty(false, false); public TSLab.Script.Optimization.OptimProperty SetPositionViewport_XAxisDivisor = new TSLab.Script.Optimization.OptimProperty(1000D, false, 1E-09D, 10000000D, 1D, 1); public TSLab.Script.Optimization.OptimProperty SetPositionViewport_XAxisStep = new TSLab.Script.Optimization.OptimProperty(5000D, false, 1E-09D, 10000000D, 1D, 1); public Script() { } public void Execute(TSLab.Script.Handlers.IContext context, TSLab.Script.Options.IOption OPTION) { // ================================================= // Windows // ================================================= // Make 'SmileWin' window TSLab.Script.Handlers.IWindow SmileWin_wnd = context.AddWindow("SmileWin", "Smile"); // Make 'PosWin' window TSLab.Script.Handlers.IWindow PosWin_wnd = context.AddWindow("PosWin", "Position"); // ================================================= // Graph & Canvas Panes // ================================================= // Make 'Main' pane TSLab.Script.IGraphPane Main_pane = context.CreateGraphPane("Main", null); Main_pane.Visible = true; Main_pane.HideLegend = false; // Make 'Volatilities' pane TSLab.Script.IGraphPane Volatilities_pane = context.CreateGraphPane("Volatilities", null); Volatilities_pane.Visible = true; Volatilities_pane.HideLegend = false; // Make 'RiskPane' pane TSLab.Script.IGraphPane RiskPane_pane = context.CreateGraphPane("RiskPane", null); RiskPane_pane.Visible = true; RiskPane_pane.HideLegend = false; // Make 'ProfitPane' pane TSLab.Script.IGraphPane ProfitPane_pane = context.CreateGraphPane("ProfitPane", null); ProfitPane_pane.Visible = true; ProfitPane_pane.HideLegend = false; // Make 'SmilePane' pane TSLab.Script.CanvasPane.ICanvasPane SmilePane_pane = SmileWin_wnd.CreateCanvasPane("SmilePane", null); SmilePane_pane.Visible = true; SmilePane_pane.HideLegend = false; SmilePane_pane.ScaleStepPercent = 0D; SmilePane_pane.GraphIndentPercent = 5D; SmilePane_pane.Dockability = false; SmilePane_pane.XAxisPrecision = 0; SmilePane_pane.XAxisByPercents = false; SmilePane_pane.XAxisStep = 5000D; SmilePane_pane.XAxisDiviser = 1000D; SmilePane_pane.YAxisPrecision = 1; SmilePane_pane.YAxisByPercents = true; SmilePane_pane.YAxisStep = 0D; SmilePane_pane.YAxisDiviser = 0D; SmilePane_pane.BorderX1 = 50000D; SmilePane_pane.BorderX2 = 150000D; SmilePane_pane.BorderY1 = null; SmilePane_pane.BorderY2 = null; SmilePane_pane.ValidBorderX1 = null; SmilePane_pane.ValidBorderX2 = null; SmilePane_pane.ValidBorderY1 = null; SmilePane_pane.ValidBorderY2 = null; SmilePane_pane.ValidBorderMode = TSLab.Script.CanvasPane.ValidBorderMode.Fixed; // Make 'PositionPane' pane TSLab.Script.CanvasPane.ICanvasPane PositionPane_pane = PosWin_wnd.CreateCanvasPane("PositionPane", null); PositionPane_pane.Visible = true; PositionPane_pane.HideLegend = false; PositionPane_pane.ScaleStepPercent = 0D; PositionPane_pane.GraphIndentPercent = 5D; PositionPane_pane.Dockability = false; PositionPane_pane.XAxisPrecision = 0; PositionPane_pane.XAxisByPercents = false; PositionPane_pane.XAxisStep = 0D; PositionPane_pane.XAxisDiviser = 0D; PositionPane_pane.YAxisPrecision = -1; PositionPane_pane.YAxisByPercents = false; PositionPane_pane.YAxisStep = 0D; PositionPane_pane.YAxisDiviser = 0D; PositionPane_pane.BorderX1 = null; PositionPane_pane.BorderX2 = null; PositionPane_pane.BorderY1 = null; PositionPane_pane.BorderY2 = null; PositionPane_pane.ValidBorderX1 = null; PositionPane_pane.ValidBorderX2 = null; PositionPane_pane.ValidBorderY1 = null; PositionPane_pane.ValidBorderY2 = null; PositionPane_pane.ValidBorderMode = TSLab.Script.CanvasPane.ValidBorderMode.Fixed; // ================================================= // ControlPanes // ================================================= // Make 'ControlDeskPane' control pane TSLab.Script.Control.IControlPane ControlDeskPane_controlPane = context.CreateControlPane("0ab4d1d2-3798-4c77-8245-33b4f5cb7df2", "ControlDeskPane", "Control Desk"); ControlDeskPane_controlPane.Visible = true; // Make 'HedgeSettingsPane' control pane TSLab.Script.Control.IControlPane HedgeSettingsPane_controlPane = SmileWin_wnd.CreateControlPane("5f42b55d-f7d2-4f8a-9c2d-4ee379e6ff3b", "HedgeSettingsPane", "Hedge Settings"); HedgeSettingsPane_controlPane.Visible = true; // Make 'SmileControlPane' control pane TSLab.Script.Control.IControlPane SmileControlPane_controlPane = SmileWin_wnd.CreateControlPane("f1be3f37-b0f8-4afd-aabd-ad88688a270c", "SmileControlPane", "Smile Settings"); SmileControlPane_controlPane.Visible = true; // Make 'QuotePane' control pane TSLab.Script.Control.IControlPane QuotePane_controlPane = SmileWin_wnd.CreateControlPane("e7db4c07-d516-407f-b99b-4003969e0493", "QuotePane", "Quote settings"); QuotePane_controlPane.Visible = true; // ================================================= // DataGridPanes // ================================================= // Make 'PosGridPane' dataGrid pane TSLab.Script.DataGridPane.IDataGridPane PosGridPane_dataGridPane = context.CreateDataGridPane("PosGridPane", "Position", 2, "N0", "K", true, TSLab.Script.TextAlignment.Left, null, 1, "d", "Date", false, TSLab.Script.TextAlignment.Left, null); PosGridPane_dataGridPane.Visible = true; // Initialize 'OptionBase' item // Make 'OptionBase' item data TSLab.Script.ISecurity OptionBase; OptionBase = this.OptionBase_h.Execute(OPTION); // Initialize 'NearOptStream' item this.NearOptStream_h.ExpirationMode = TSLab.Script.Handlers.Options.ExpiryMode.FirstExpiry; this.NearOptStream_h.Expiry = "17-11-2014 18:45"; this.NearOptStream_h.Number = 1; // Make 'NearOptStream' item data TSLab.Script.Options.IOptionSeries NearOptStream; NearOptStream = this.NearOptStream_h.Execute(OPTION); // Initialize 'PosMan' item this.PosMan_h.Context = context; this.PosMan_h.VariableId = "bd3c4148-0af5-4933-a9c4-35a09445d870"; this.PosMan_h.AgregatePositions = true; this.PosMan_h.BlockTrading = this.PosMan_BlockTrading; this.PosMan_h.CheckSecurityTime = false; this.PosMan_h.DropVirtualPos = this.PosMan_DropVirtualPos; this.PosMan_h.ImportRealPos = false; this.PosMan_h.UseGlobalCache = true; this.PosMan_h.UseVirtualPositions = this.PosMan_UseVirtualPositions; TSLab.Script.Options.IOption PosMan; // Initialize 'FutPx' item this.FutPx_h.Context = context; this.FutPx_h.VariableId = "5af32915-8f1a-48c4-b385-b08116fbf5d0"; this.FutPx_h.DisplayPrice = this.FutPx_DisplayPrice; this.FutPx_h.DisplayUnits = TSLab.Script.Handlers.Options.FixedValueMode.AsIs; this.FutPx_h.FixedPx = 120000D; this.FutPx_h.PxMode = TSLab.Script.Handlers.Options.BasePxMode.LastTrade; this.FutPx_h.RepeatLastPx = true; double FutPx = 0; // Initialize 'dT' item this.dT_h.Context = context; this.dT_h.VariableId = "1dee5482-1838-4c15-be42-36d755e269ec"; this.dT_h.CurDateMode = TSLab.Script.Handlers.Options.CurrentDateMode.CurrentDate; this.dT_h.DistanceMode = TSLab.Script.Handlers.Options.TimeRemainMode.RtsTradingTime; this.dT_h.ExpirationMode = TSLab.Script.Handlers.Options.ExpiryMode.FirstExpiry; this.dT_h.Expiry = "17-11-2014 18:45"; this.dT_h.ExpiryTime = "18:45"; this.dT_h.FixedDate = "17-11-2014 18:45"; this.dT_h.SeriesIndex = 1; this.dT_h.Time = this.dT_Time; this.dT_h.UseDays = false; // Make 'dT' item data System.Collections.Generic.IList dT = context.GetData("dT", new string[] { this.dT_h.CurDateMode.ToString(), this.dT_h.DistanceMode.ToString(), this.dT_h.ExpirationMode.ToString(), this.dT_h.Expiry.ToString(), this.dT_h.ExpiryTime.ToString(), this.dT_h.FixedDate.ToString(), this.dT_h.SeriesIndex.ToString(), this.dT_h.Time.ToString(), this.dT_h.UseDays.ToString(), "d0a486d3-faea-4a87-ae77-72ceee564e60" }, delegate { return this.dT_h.Execute(OPTION); }); // Initialize 'CentralStrike' item this.CentralStrike_h.Context = context; this.CentralStrike_h.VariableId = "6301ac20-91b2-48bb-9a6b-8e487db88aa4"; this.CentralStrike_h.DisplayPrice = this.CentralStrike_DisplayPrice; this.CentralStrike_h.DisplayUnits = TSLab.Script.Handlers.Options.FixedValueMode.AsIs; this.CentralStrike_h.ShiftStrike = this.CentralStrike_ShiftStrike; this.CentralStrike_h.StrikeStep = this.CentralStrike_StrikeStep; this.CentralStrike_h.SwitchRatioPct = 62D; // Make 'CentralStrike' item data System.Collections.Generic.IList CentralStrike = context.GetData("CentralStrike", new string[] { this.NearOptStream_h.ExpirationMode.ToString(), this.NearOptStream_h.Expiry.ToString(), this.NearOptStream_h.Number.ToString(), this.CentralStrike_h.DisplayPrice.ToString(), this.CentralStrike_h.DisplayUnits.ToString(), this.CentralStrike_h.ShiftStrike.ToString(), this.CentralStrike_h.StrikeStep.ToString(), this.CentralStrike_h.SwitchRatioPct.ToString(), "d0a486d3-faea-4a87-ae77-72ceee564e60" }, delegate { return this.CentralStrike_h.Execute(NearOptStream); }); // Initialize 'NearOptions' item this.NearOptions_h.Context = context; this.NearOptions_h.ExpirationMode = TSLab.Script.Handlers.Options.ExpiryMode.FirstExpiry; this.NearOptions_h.Expiry = "17-11-2014 18:45"; this.NearOptions_h.Number = 1; TSLab.Script.Options.IOptionSeries NearOptions; // Initialize 'exSmileRescaled' item this.exSmileRescaled_h.Context = context; this.exSmileRescaled_h.VariableId = "15375098-09a7-446d-a0d3-ddd44aff17ed"; this.exSmileRescaled_h.ExpiryTime = "18:45"; this.exSmileRescaled_h.OptionType = TSLab.Script.Options.StrikeType.Call; this.exSmileRescaled_h.RescaleTime = true; this.exSmileRescaled_h.ShowNodes = false; this.exSmileRescaled_h.SigmaMult = 5D; TSLab.Script.CanvasPane.InteractiveSeries exSmileRescaled; TSLab.Script.CanvasPane.InteractiveSeries exSmileRescaled_chart = null; // Initialize 'GlobalSmile' item this.GlobalSmile_h.Context = context; this.GlobalSmile_h.VariableId = "6f669741-942d-410c-9f3a-fa0c9aa9bfe0"; this.GlobalSmile_h.FrozenSmileID = "FrozenSmile"; this.GlobalSmile_h.GenerateTails = true; this.GlobalSmile_h.GlobalSmileID = "GlobalSmile0"; this.GlobalSmile_h.IvAtmPct = this.GlobalSmile_IvAtmPct; this.GlobalSmile_h.SetIvByHands = this.GlobalSmile_SetIvByHands; this.GlobalSmile_h.SetShapeByHands = this.GlobalSmile_SetShapeByHands; this.GlobalSmile_h.SetSlopeByHands = this.GlobalSmile_SetSlopeByHands; this.GlobalSmile_h.ShapePct = this.GlobalSmile_ShapePct; this.GlobalSmile_h.ShowNodes = false; this.GlobalSmile_h.SigmaMult = 5D; this.GlobalSmile_h.SlopePct = this.GlobalSmile_SlopePct; this.GlobalSmile_h.UseLocalTemplate = false; TSLab.Script.CanvasPane.InteractiveSeries GlobalSmile; // Initialize 'WrapSmile' item this.WrapSmile_h.Context = context; this.WrapSmile_h.VariableId = "339f9758-122c-49d6-ad5d-d5adb63d7df7"; this.WrapSmile_h.OptPxMode = TSLab.Script.Handlers.Options.OptionPxMode.Mid; this.WrapSmile_h.ShiftIvPct = 0D; this.WrapSmile_h.SimmWeight = 0.5D; this.WrapSmile_h.Transformation = TSLab.Script.Handlers.Options.SmileTransformation.None; TSLab.Script.CanvasPane.InteractiveSeries WrapSmile; // Initialize 'Model' item this.Model_h.Context = context; this.Model_h.VariableId = "637fb953-45d1-4a81-82fb-2c418e36805d"; this.Model_h.OptPxMode = TSLab.Script.Handlers.Options.OptionPxMode.Mid; this.Model_h.ShiftIvPct = 0D; this.Model_h.SimmWeight = 0.5D; this.Model_h.Transformation = TSLab.Script.Handlers.Options.SmileTransformation.LogSimmetrise; TSLab.Script.CanvasPane.InteractiveSeries Model; TSLab.Script.CanvasPane.InteractiveSeries Model_chart = null; // Initialize 'ModelProfile' item this.ModelProfile_h.Context = context; this.ModelProfile_h.VariableId = "d2d4fd93-1d0b-41c9-8872-25d0529c80a8"; this.ModelProfile_h.GreekAlgo = TSLab.Script.Handlers.Options.NumericalGreekAlgo.ShiftingSmile; this.ModelProfile_h.NodesCount = this.ModelProfile_NodesCount; this.ModelProfile_h.ShowNodes = false; this.ModelProfile_h.SigmaMult = 5D; this.ModelProfile_h.TooltipFormat = this.ModelProfile_TooltipFormat; TSLab.Script.CanvasPane.InteractiveSeries ModelProfile; // Initialize 'DeltaProfile' item this.DeltaProfile_h.Context = context; this.DeltaProfile_h.VariableId = "55cdae6f-67e9-4d84-879b-0e275c16c77a"; this.DeltaProfile_h.ShowNodes = false; this.DeltaProfile_h.SigmaMult = this.DeltaProfile_SigmaMult; this.DeltaProfile_h.TooltipFormat = "0.000"; TSLab.Script.CanvasPane.InteractiveSeries DeltaProfile; // Initialize 'DeltaATM' item this.DeltaATM_h.Context = context; this.DeltaATM_h.VariableId = "3da71edd-edec-4696-a96b-c6942049ed7c"; this.DeltaATM_h.Delta = this.DeltaATM_Delta; this.DeltaATM_h.HedgeDelta = this.DeltaATM_HedgeDelta; this.DeltaATM_h.PrintDeltaInLog = this.DeltaATM_PrintDeltaInLog; double DeltaATM = 0; // Initialize 'AutoHedge' item this.AutoHedge_h.Context = context; this.AutoHedge_h.VariableId = "616f2739-0cb1-43f9-9922-fa1a18b8ec08"; this.AutoHedge_h.BuyShift = this.AutoHedge_BuyShift; this.AutoHedge_h.DownDelta = this.AutoHedge_DownDelta; this.AutoHedge_h.HedgeDelta = this.AutoHedge_HedgeDelta; this.AutoHedge_h.MinPeriod = this.AutoHedge_MinPeriod; this.AutoHedge_h.SellShift = this.AutoHedge_SellShift; this.AutoHedge_h.SensitivityPct = this.AutoHedge_SensitivityPct; this.AutoHedge_h.TargetDelta = this.AutoHedge_TargetDelta; this.AutoHedge_h.UpDelta = this.AutoHedge_UpDelta; double AutoHedge = 0; TSLab.Script.Helpers.ChartHelper AutoHedge_chart = new TSLab.Script.Helpers.ChartHelper(OPTION.UnderlyingAsset.Bars.Count); // Initialize 'MktProfile' item this.MktProfile_h.Context = context; this.MktProfile_h.VariableId = "ec9f32da-f550-456f-82e1-0eea6574da4d"; this.MktProfile_h.GreekAlgo = TSLab.Script.Handlers.Options.NumericalGreekAlgo.ShiftingSmile; this.MktProfile_h.NodesCount = this.MktProfile_NodesCount; this.MktProfile_h.ShowNodes = true; this.MktProfile_h.SigmaMult = 5D; this.MktProfile_h.TooltipFormat = this.MktProfile_TooltipFormat; TSLab.Script.CanvasPane.InteractiveSeries MktProfile; TSLab.Script.CanvasPane.InteractiveSeries MktProfile_chart = null; // Initialize 'TotalRiskN2' item this.TotalRiskN2_h.Context = context; this.TotalRiskN2_h.VariableId = "4c2da6bc-ca68-4b74-8887-ed13a043dff6"; this.TotalRiskN2_h.DisplayRisk = this.TotalRiskN2_DisplayRisk; this.TotalRiskN2_h.DisplayUnits = TSLab.Script.Handlers.Options.FixedValueMode.AsIs; this.TotalRiskN2_h.RepeatLastValue = true; double TotalRiskN2 = 0; TSLab.Script.Helpers.ChartHelper TotalRiskN2_chart = new TSLab.Script.Helpers.ChartHelper(OPTION.UnderlyingAsset.Bars.Count); // Initialize 'MaxRisk' item this.MaxRisk_h.Value = this.MaxRisk_Value; // Make 'MaxRisk' item data System.Collections.Generic.IList MaxRisk = context.GetData("MaxRisk", new string[] { this.MaxRisk_h.Value.ToString(), "d0a486d3-faea-4a87-ae77-72ceee564e60" }, delegate { return this.MaxRisk_h.Execute(context); }); // Initialize 'QtyCalls' item this.QtyCalls_h.Context = context; this.QtyCalls_h.VariableId = "7bece72e-e1e6-4bd5-bdfb-f71a8a5243c7"; this.QtyCalls_h.CountFutures = false; this.QtyCalls_h.OptionType = TSLab.Script.Options.StrikeType.Call; this.QtyCalls_h.ShowNodes = false; this.QtyCalls_h.SigmaMult = 7D; this.QtyCalls_h.TooltipFormat = this.QtyCalls_TooltipFormat; TSLab.Script.CanvasPane.InteractiveSeries QtyCalls; TSLab.Script.CanvasPane.InteractiveSeries QtyCalls_chart = null; // Initialize 'QtyPuts' item this.QtyPuts_h.Context = context; this.QtyPuts_h.VariableId = "2bcce604-5e68-4753-88e8-548f98ecf266"; this.QtyPuts_h.CountFutures = false; this.QtyPuts_h.OptionType = TSLab.Script.Options.StrikeType.Put; this.QtyPuts_h.ShowNodes = false; this.QtyPuts_h.SigmaMult = 7D; this.QtyPuts_h.TooltipFormat = this.QtyPuts_TooltipFormat; TSLab.Script.CanvasPane.InteractiveSeries QtyPuts; TSLab.Script.CanvasPane.InteractiveSeries QtyPuts_chart = null; // Initialize 'QtyTotal' item this.QtyTotal_h.Context = context; this.QtyTotal_h.VariableId = "0afdee15-f38f-44cf-a084-fbdb00d00f5e"; this.QtyTotal_h.CountFutures = true; this.QtyTotal_h.OptionType = TSLab.Script.Options.StrikeType.Any; this.QtyTotal_h.ShowNodes = false; this.QtyTotal_h.SigmaMult = 7D; this.QtyTotal_h.TooltipFormat = this.QtyTotal_TooltipFormat; TSLab.Script.CanvasPane.InteractiveSeries QtyTotal; TSLab.Script.CanvasPane.InteractiveSeries QtyTotal_chart = null; // Initialize 'TotalProfit' item this.TotalProfit_h.Context = context; this.TotalProfit_h.VariableId = "e2d672d8-f0e5-4001-a99b-6709ffd9f21c"; this.TotalProfit_h.PrintProfitInLog = false; this.TotalProfit_h.Profit = this.TotalProfit_Profit; this.TotalProfit_h.ProfitAlgo = TSLab.Script.Handlers.Options.TotalProfitAlgo.AllPositions; double TotalProfit = 0; TSLab.Script.Helpers.ChartHelper TotalProfit_chart = new TSLab.Script.Helpers.ChartHelper(OPTION.UnderlyingAsset.Bars.Count); // Initialize 'IVAsks' item this.IVAsks_h.Context = context; this.IVAsks_h.VariableId = "eea2499c-5a62-4323-a55c-66cf49e59d03"; this.IVAsks_h.MaxSigmaPct = 200D; this.IVAsks_h.MaxStrike = 1500000D; this.IVAsks_h.MinStrike = 1D; this.IVAsks_h.OptionType = TSLab.Script.Options.StrikeType.Any; this.IVAsks_h.OptPxMode = TSLab.Script.Handlers.Options.OptionPxMode.Ask; this.IVAsks_h.ShiftAsk = 0D; this.IVAsks_h.ShiftBid = 0D; this.IVAsks_h.ShowNodes = true; this.IVAsks_h.StrikeStep = 2500D; TSLab.Script.CanvasPane.InteractiveSeries IVAsks; TSLab.Script.CanvasPane.InteractiveSeries IVAsks_chart = null; // Initialize 'IVBids' item this.IVBids_h.Context = context; this.IVBids_h.VariableId = "3dda290a-9162-4dca-a531-933c93b100e7"; this.IVBids_h.MaxSigmaPct = 200D; this.IVBids_h.MaxStrike = 1500000D; this.IVBids_h.MinStrike = 1D; this.IVBids_h.OptionType = TSLab.Script.Options.StrikeType.Any; this.IVBids_h.OptPxMode = TSLab.Script.Handlers.Options.OptionPxMode.Bid; this.IVBids_h.ShiftAsk = 0D; this.IVBids_h.ShiftBid = 0D; this.IVBids_h.ShowNodes = true; this.IVBids_h.StrikeStep = 2500D; TSLab.Script.CanvasPane.InteractiveSeries IVBids; TSLab.Script.CanvasPane.InteractiveSeries IVBids_chart = null; // Initialize 'CurrFutPx_Smile' item this.CurrFutPx_Smile_h.Context = context; this.CurrFutPx_Smile_h.VariableId = "3474396b-98a8-47f8-9fdf-d350c1fd11fc"; this.CurrFutPx_Smile_h.MinHeight = 0.05D; this.CurrFutPx_Smile_h.OffsetPct = 10D; this.CurrFutPx_Smile_h.Qty = 1; TSLab.Script.CanvasPane.InteractiveSeries CurrFutPx_Smile; TSLab.Script.CanvasPane.InteractiveSeries CurrFutPx_Smile_chart = null; // Initialize 'Market' item this.Market_h.Context = context; this.Market_h.VariableId = "a9eeb1ed-445c-4bad-88f3-a7351e626059"; this.Market_h.OptPxMode = TSLab.Script.Handlers.Options.OptionPxMode.Mid; this.Market_h.ShiftIvPct = 0D; this.Market_h.SimmWeight = 0.5D; this.Market_h.Transformation = TSLab.Script.Handlers.Options.SmileTransformation.None; TSLab.Script.CanvasPane.InteractiveSeries Market; TSLab.Script.CanvasPane.InteractiveSeries Market_chart = null; // Initialize 'IV_ATM' item this.IV_ATM_h.Context = context; this.IV_ATM_h.VariableId = "6471c597-b23d-449a-8115-4aeb4995f3af"; this.IV_ATM_h.Moneyness = 0D; this.IV_ATM_h.PrintInLog = false; this.IV_ATM_h.RepeatLastValue = this.IV_ATM_RepeatLastValue; this.IV_ATM_h.Result = this.IV_ATM_Result; double IV_ATM = 0; TSLab.Script.Helpers.ChartHelper IV_ATM_chart = new TSLab.Script.Helpers.ChartHelper(OPTION.UnderlyingAsset.Bars.Count); // Initialize 'BlacSchoSmil' item this.BlacSchoSmil_h.Context = context; this.BlacSchoSmil_h.VariableId = "4e19206c-a926-4298-82a4-7aa514d8cace"; this.BlacSchoSmil_h.ShowNodes = false; this.BlacSchoSmil_h.SigmaMult = 7D; TSLab.Script.CanvasPane.InteractiveSeries BlacSchoSmil; TSLab.Script.CanvasPane.InteractiveSeries BlacSchoSmil_chart = null; // Initialize 'ZeroDT' item this.ZeroDT_h.Value = 1E-06D; // Make 'ZeroDT' item data System.Collections.Generic.IList ZeroDT = context.GetData("ZeroDT", new string[] { this.ZeroDT_h.Value.ToString(), "d0a486d3-faea-4a87-ae77-72ceee564e60" }, delegate { return this.ZeroDT_h.Execute(context); }); // Initialize 'ExpiryProfile' item this.ExpiryProfile_h.Context = context; this.ExpiryProfile_h.VariableId = "e4d1b5b8-c867-4426-b0cd-21f9f88b0936"; this.ExpiryProfile_h.GreekAlgo = TSLab.Script.Handlers.Options.NumericalGreekAlgo.ShiftingSmile; this.ExpiryProfile_h.NodesCount = this.ExpiryProfile_NodesCount; this.ExpiryProfile_h.ShowNodes = false; this.ExpiryProfile_h.SigmaMult = 7D; this.ExpiryProfile_h.TooltipFormat = this.ExpiryProfile_TooltipFormat; TSLab.Script.CanvasPane.InteractiveSeries ExpiryProfile; TSLab.Script.CanvasPane.InteractiveSeries ExpiryProfile_chart = null; // Initialize 'CurrFutPx_Pos' item this.CurrFutPx_Pos_h.Context = context; this.CurrFutPx_Pos_h.VariableId = "377bdce1-3d31-4196-be9c-5ac9228c87e8"; this.CurrFutPx_Pos_h.MinHeight = 0.03D; this.CurrFutPx_Pos_h.OffsetPct = 10D; this.CurrFutPx_Pos_h.Qty = 1; TSLab.Script.CanvasPane.InteractiveSeries CurrFutPx_Pos; TSLab.Script.CanvasPane.InteractiveSeries CurrFutPx_Pos_chart = null; // Initialize 'SeriesSelector' item this.SeriesSelector_h.Context = context; this.SeriesSelector_h.VariableId = "914d832a-83d8-49fa-a104-4447176279f0"; this.SeriesSelector_h.AliveOnly = true; this.SeriesSelector_h.OptionSeries = this.SeriesSelector_OptionSeries; // Make 'SeriesSelector' item data TSLab.Script.Options.IOptionSeries SeriesSelector; SeriesSelector = this.SeriesSelector_h.Execute(NearOptStream); double Enter = 0; // Initialize 'BuyOptions' item this.BuyOptions_h.Context = context; this.BuyOptions_h.EntryShift = this.BuyOptions_EntryShift; this.BuyOptions_h.ExitShift = this.BuyOptions_ExitShift; this.BuyOptions_h.FixedQty = this.BuyOptions_FixedQty; this.BuyOptions_h.OptionType = TSLab.Script.Options.StrikeType.Call; double BuyOptions = 0; // Initialize 'AlwaysAllow' item this.AlwaysAllow_h.Value = 1D; // Make 'AlwaysAllow' item data System.Collections.Generic.IList AlwaysAllow = context.GetData("AlwaysAllow", new string[] { this.AlwaysAllow_h.Value.ToString(), "d0a486d3-faea-4a87-ae77-72ceee564e60" }, delegate { return this.AlwaysAllow_h.Execute(context); }); // Initialize 'One' item this.One_h.Value = 1D; // Make 'One' item data System.Collections.Generic.IList One = context.GetData("One", new string[] { this.One_h.Value.ToString(), "d0a486d3-faea-4a87-ae77-72ceee564e60" }, delegate { return this.One_h.Execute(context); }); // Initialize 'Zero' item this.Zero_h.Value = 0D; // Make 'Zero' item data System.Collections.Generic.IList Zero = context.GetData("Zero", new string[] { this.Zero_h.Value.ToString(), "d0a486d3-faea-4a87-ae77-72ceee564e60" }, delegate { return this.Zero_h.Execute(context); }); // Initialize 'SellOptions' item this.SellOptions_h.Context = context; this.SellOptions_h.EntryShift = this.BuyOptions_ExitShift; this.SellOptions_h.ExitShift = this.BuyOptions_EntryShift; this.SellOptions_h.FixedQty = 1; this.SellOptions_h.OptionType = TSLab.Script.Options.StrikeType.Call; double SellOptions = 0; // Initialize 'QuoteIv' item this.QuoteIv_h.Context = context; this.QuoteIv_h.VariableId = "7acddef7-d268-426b-8f4a-14e687a961f8"; this.QuoteIv_h.CancelAllLong = this.QuoteIv_CancelAllLong; this.QuoteIv_h.CancelAllShort = this.QuoteIv_CancelAllShort; this.QuoteIv_h.ExecuteCommand = this.QuoteIv_ExecuteCommand; this.QuoteIv_h.OptionType = TSLab.Script.Options.StrikeType.Call; this.QuoteIv_h.Qty = this.QuoteIv_Qty; this.QuoteIv_h.ShiftIvPct = this.QuoteIv_ShiftIvPct; this.QuoteIv_h.Strike = this.QuoteIv_Strike; this.QuoteIv_h.StrikeStep = this.CentralStrike_StrikeStep; TSLab.Script.CanvasPane.InteractiveSeries QuoteIv; TSLab.Script.CanvasPane.InteractiveSeries QuoteIv_chart = null; // Initialize 'ShowLongTargets' item this.ShowLongTargets_h.Context = context; this.ShowLongTargets_h.VariableId = "00de8ff4-7b4d-40f9-9c5e-96e568af48f8"; this.ShowLongTargets_h.IsLong = true; TSLab.Script.CanvasPane.InteractiveSeries ShowLongTargets; TSLab.Script.CanvasPane.InteractiveSeries ShowLongTargets_chart = null; // Initialize 'ShowShortTargets' item this.ShowShortTargets_h.Context = context; this.ShowShortTargets_h.VariableId = "a36f483e-7d69-48d3-8cf1-b766ecd67374"; this.ShowShortTargets_h.IsLong = false; TSLab.Script.CanvasPane.InteractiveSeries ShowShortTargets; TSLab.Script.CanvasPane.InteractiveSeries ShowShortTargets_chart = null; bool LF = false; // ================================================= // Handlers // ================================================= // Initialize 'SetSmileViewport' item this.SetSmileViewport_h.Context = context; this.SetSmileViewport_h.VariableId = "1ed8241f-1118-4cd3-8120-3256d5892cd1"; this.SetSmileViewport_h.ApplyVisualSettings = this.SetSmileViewport_ApplyVisualSettings; this.SetSmileViewport_h.ManageX = true; this.SetSmileViewport_h.ManageXGridStep = true; this.SetSmileViewport_h.ManageY = true; this.SetSmileViewport_h.ShowNodes = false; this.SetSmileViewport_h.SigmaMult = 7D; this.SetSmileViewport_h.VerticalMultiplier = 1.8D; this.SetSmileViewport_h.XAxisDivisor = this.SetSmileViewport_XAxisDivisor; this.SetSmileViewport_h.XAxisStep = this.SetSmileViewport_XAxisStep; // Initialize 'SetPositionViewport' item this.SetPositionViewport_h.Context = context; this.SetPositionViewport_h.VariableId = "c7ac13d1-f1fe-48cd-8451-47cc14e0a493"; this.SetPositionViewport_h.ApplyVisualSettings = this.SetPositionViewport_ApplyVisualSettings; this.SetPositionViewport_h.ManageX = true; this.SetPositionViewport_h.ManageXGridStep = true; this.SetPositionViewport_h.ManageY = false; this.SetPositionViewport_h.ShowNodes = false; this.SetPositionViewport_h.SigmaMult = 3D; this.SetPositionViewport_h.VerticalMultiplier = 1.8D; this.SetPositionViewport_h.XAxisDivisor = this.SetPositionViewport_XAxisDivisor; this.SetPositionViewport_h.XAxisStep = this.SetPositionViewport_XAxisStep; // ================================================= // Trading // ================================================= int barsCount = OPTION.UnderlyingAsset.Bars.Count; if ((context.IsLastBarUsed == false)) { barsCount--; } for (int i = 0; (i < barsCount); i++) { PosMan = this.PosMan_h.Execute(OPTION, i); FutPx = this.FutPx_h.Execute(PosMan, i); NearOptions = this.NearOptions_h.Execute(PosMan, i); exSmileRescaled = this.exSmileRescaled_h.Execute(FutPx, dT[i], NearOptions, i); GlobalSmile = this.GlobalSmile_h.Execute(FutPx, dT[i], exSmileRescaled, NearOptions, i); WrapSmile = this.WrapSmile_h.Execute(GlobalSmile, i); Model = this.Model_h.Execute(WrapSmile, i); ModelProfile = this.ModelProfile_h.Execute(dT[i], Model, NearOptions, i); DeltaProfile = this.DeltaProfile_h.Execute(ModelProfile, i); DeltaATM = this.DeltaATM_h.Execute(DeltaProfile, NearOptions, i); AutoHedge = this.AutoHedge_h.Execute(FutPx, DeltaATM, NearOptions, i); MktProfile = this.MktProfile_h.Execute(dT[i], WrapSmile, NearOptions, i); TotalRiskN2 = this.TotalRiskN2_h.Execute(PosMan, i); QtyCalls = this.QtyCalls_h.Execute(dT[i], WrapSmile, NearOptions, i); QtyPuts = this.QtyPuts_h.Execute(dT[i], WrapSmile, NearOptions, i); QtyTotal = this.QtyTotal_h.Execute(dT[i], WrapSmile, NearOptions, i); TotalProfit = this.TotalProfit_h.Execute(MktProfile, i); IVAsks = this.IVAsks_h.Execute(FutPx, dT[i], NearOptions, i); IVBids = this.IVBids_h.Execute(FutPx, dT[i], NearOptions, i); CurrFutPx_Smile = this.CurrFutPx_Smile_h.Execute(FutPx, WrapSmile, NearOptions, i); Market = this.Market_h.Execute(WrapSmile, i); this.SetSmileViewport_h.Execute(FutPx, dT[i], WrapSmile, SmilePane_pane, i); IV_ATM = this.IV_ATM_h.Execute(WrapSmile, i); BlacSchoSmil = this.BlacSchoSmil_h.Execute(FutPx, dT[i], i); ExpiryProfile = this.ExpiryProfile_h.Execute(ZeroDT[i], WrapSmile, NearOptions, i); this.SetPositionViewport_h.Execute(FutPx, dT[i], NearOptions, PositionPane_pane, i); CurrFutPx_Pos = this.CurrFutPx_Pos_h.Execute(FutPx, MktProfile, NearOptions, i); LF = FutPx*0.95