@page @model DashboardBottomModel @{ Layout = null; } @section Styles { }
@{ string totalCurrentValueString = Model.totalCurrentValue.ToString("#,#0.00000000", new System.Globalization.CultureInfo("en-US")); if (Model.totalCurrentValue > 100) { totalCurrentValueString = Math.Round(Model.totalCurrentValue, 2).ToString("#,#0.00", new System.Globalization.CultureInfo("en-US")); } }
TCV: @totalCurrentValueString @Model.Summary.MainMarket
Start: @Model.MiscData.StartBalance   Gain: @Math.Round(((Model.totalCurrentValue - Model.MiscData.StartBalance) / Model.MiscData.StartBalance) * 100, 2)%

Live TCV Trend @if (!Model.TotalCurrentValueLiveChartDataJSON.Equals("")) {
} else {

Unable to load graph, no sales data found.

}

Market Trend History

@if (!Model.TrendChartDataJSON.Equals("")) {
} else {

Unable to load graph, no market trend data found.

}
@*
*@

Daily Profit @if (!Model.ProfitChartDataJSON.Equals("")) {
} else {

Unable to load graph, no sales data found.

}

@*

*@

Live Market Trends ANALYZER

@foreach (var marketTrend in Model.MarketTrends.OrderBy(mt => mt.TrendMinutes)) { if (Model.Summary.MarketTrendChanges.ContainsKey(marketTrend.Name)) { double trendChange = Model.Summary.MarketTrendChanges[marketTrend.Name].Last().TrendChange; string trendChangeOutput = trendChange.ToString("#,#0.00", new System.Globalization.CultureInfo("en-US")); int marketCount = marketTrend.MaxMarkets; string marketCountString = marketCount.ToString(); if (marketCount == 0) { marketCountString = "All"; } else if (marketCount > Model.Summary.MarketSummary.Keys.Count && marketTrend.Platform.Equals("Exchange", StringComparison.InvariantCultureIgnoreCase)) { marketCountString = Model.Summary.MarketSummary.Keys.Count.ToString(); } // Cache the result of SplitCamelCase(marketTrend.Name) string splitCamelCaseName = Core.Helper.SystemHelper.SplitCamelCase(marketTrend.Name); @if (marketTrend.TrendThreshold == 0) { } else { } } }
Name Markets Timeframe Threshold   Change
@splitCamelCaseName @marketCountString @Core.Helper.SystemHelper.GetProperDurationTime(marketTrend.TrendMinutes * 60, false)--@marketTrend.TrendThreshold %@trendChangeOutput %

Sales Overview ANALYZER

@{ double avgGrowthThisMonth = Model.PTData.MonthlyStats.FirstOrDefault(data => data.Order == 1)?.AvgGrowth ?? 0.0; double avgGrowthLastMonth = Model.PTData.MonthlyStats.FirstOrDefault(data => data.Order == 2)?.AvgGrowth ?? 0.0; //var startingBalance = Model.MiscData.StartBalance; var totalCurrentValue = Model.totalCurrentValue; var overviewStats = Model.StatsData; var todaysSales = overviewStats.SalesToday; var todaysProfit = overviewStats.ProfitToday; var todaysFunding = overviewStats.FundingToday; var todaysPercentGain = overviewStats.ProfitPercToday + Model.PTData.Stats.TotalFundingPercToday; var yesterdaysSales = overviewStats.SalesYesterday; var yesterdaysProfit = overviewStats.ProfitYesterday; var yesterdaysFunding = overviewStats.FundingYesterday; var yesterdaysPercentGain = overviewStats.ProfitPercYesterday + Model.PTData.Stats.TotalFundingPercYesterday; var last7DaysSales = overviewStats.SalesWeek; var last7DaysProfit = overviewStats.ProfitWeek; var last7DaysFunding = overviewStats.FundingWeek; var last7DaysPercentGain = overviewStats.ProfitPercWeek + Model.PTData.Stats.TotalFundingPercWeek; var thisMonthSales = overviewStats.SalesThisMonth; var thisMonthProfit = overviewStats.ProfitThisMonth; var thisMonthFunding = overviewStats.FundingThisMonth; var thisMonthPercentGain = avgGrowthThisMonth; var lastMonthSales = overviewStats.SalesLastMonth; var lastMonthProfit = overviewStats.ProfitLastMonth; var lastMonthFunding = overviewStats.FundingLastMonth; var lastMonthPercentGain = avgGrowthLastMonth; var totalSales = overviewStats.TotalSales; var totalProfit = overviewStats.TotalProfit; var totalFunding = overviewStats.FundingTotal; var totalPercentGain = overviewStats.TotalProfitPerc + Model.PTData.Stats.TotalFundingPerc; double todaysProfitFiat = Math.Round((todaysProfit + todaysFunding) * Model.PTData.Misc.FiatConversionRate, 2); double yesterdaysProfitFiat = Math.Round((yesterdaysProfit + yesterdaysFunding) * Model.PTData.Misc.FiatConversionRate, 2); double last7DaysProfitFiat = Math.Round((last7DaysProfit + last7DaysFunding) * Model.PTData.Misc.FiatConversionRate, 2); double thisMonthProfitFiat = Math.Round((thisMonthProfit + thisMonthFunding) * Model.PTData.Misc.FiatConversionRate, 2); double lastMonthProfitFiat = Math.Round((lastMonthProfit + lastMonthFunding) * Model.PTData.Misc.FiatConversionRate, 2); double totalProfitFiat = Math.Round((totalProfit + totalFunding) * Model.PTData.Misc.FiatConversionRate, 2); bool futuresFunding = Model.PropertiesData.IsLeverageExchange; } @if (futuresFunding) { } @if (futuresFunding) { } @if (futuresFunding) { } @if (futuresFunding) { } @{ var timeParts = @Model.MiscData.TimeZoneOffset.Split(':'); var timeZoneOffsetHours = int.Parse(timeParts[0]); var timeZoneOffset = TimeSpan.FromHours(timeZoneOffsetHours); var timeZoneInfo = TimeZoneInfo.CreateCustomTimeZone("Custom", timeZoneOffset, "Custom", "Custom"); var currentDateTime = TimeZoneInfo.ConvertTime(DateTime.UtcNow, timeZoneInfo); var currentMonthName = currentDateTime.ToString("MMMM"); } @if (futuresFunding) { } @{ var previousMonthDateTime = currentDateTime.AddMonths(-1); var previousMonthName = previousMonthDateTime.ToString("MMMM"); } @if (futuresFunding) { } @if (futuresFunding) { }
Sales Profit @Model.PTData.Misc.MarketFunding@Model.PTData.Properties.Currency Gain
Today @overviewStats.SalesToday @todaysProfit.ToString("#,#0.00000000", new System.Globalization.CultureInfo("en-US"))@todaysFunding.ToString("#,#0.00000000", new System.Globalization.CultureInfo("en-US"))@Html.Raw(todaysProfitFiat.ToString("#,#0.00", new System.Globalization.CultureInfo("en-US"))) @todaysPercentGain.ToString("#,#0.00", new System.Globalization.CultureInfo("en-US")) %
Yesterday @yesterdaysSales @yesterdaysProfit.ToString("#,#0.00000000", new System.Globalization.CultureInfo("en-US"))@yesterdaysFunding.ToString("#,#0.00000000", new System.Globalization.CultureInfo("en-US"))@Html.Raw(yesterdaysProfitFiat.ToString("#,#0.00", new System.Globalization.CultureInfo("en-US"))) @yesterdaysPercentGain.ToString("#,#0.00", new System.Globalization.CultureInfo("en-US")) %
7 Days @last7DaysSales @last7DaysProfit.ToString("#,#0.00000000", new System.Globalization.CultureInfo("en-US"))@last7DaysFunding.ToString("#,#0.00000000", new System.Globalization.CultureInfo("en-US"))@Html.Raw(last7DaysProfitFiat.ToString("#,#0.00", new System.Globalization.CultureInfo("en-US"))) @last7DaysPercentGain.ToString("#,#0.00", new System.Globalization.CultureInfo("en-US")) %
@currentMonthName @thisMonthSales @thisMonthProfit.ToString("#,#0.00000000", new System.Globalization.CultureInfo("en-US"))@thisMonthFunding.ToString("#,#0.00000000", new System.Globalization.CultureInfo("en-US"))@Html.Raw(thisMonthProfitFiat.ToString("#,#0.00", new System.Globalization.CultureInfo("en-US"))) @thisMonthPercentGain.ToString("#,#0.00", new System.Globalization.CultureInfo("en-US")) %
@previousMonthName @lastMonthSales @lastMonthProfit.ToString("#,#0.00000000", new System.Globalization.CultureInfo("en-US"))@lastMonthFunding.ToString("#,#0.00000000", new System.Globalization.CultureInfo("en-US"))@Html.Raw(lastMonthProfitFiat.ToString("#,#0.00", new System.Globalization.CultureInfo("en-US"))) @lastMonthPercentGain.ToString("#,#0.00", new System.Globalization.CultureInfo("en-US")) %
Total @totalSales @totalProfit.ToString("#,#0.00000000", new System.Globalization.CultureInfo("en-US"))@totalFunding.ToString("#,#0.00000000", new System.Globalization.CultureInfo("en-US"))@Html.Raw(totalProfitFiat.ToString("#,#0.00", new System.Globalization.CultureInfo("en-US"))) @totalPercentGain.ToString("#,#0.00", new System.Globalization.CultureInfo("en-US")) %