//------------------------------------------------------------------------------
//
// Этот код создан программой.
// Исполняемая версия: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