@page @model DashboardBottomModel @{ Layout = null; } @section Styles { }
@if (!Model.TrendChartDataJSON.Equals("")) {
} else {

Unable to load graph, no market trend data found.

}
@{ double currentBalance = Model.PTData.GetCurrentBalance(); string currentBalanceString = currentBalance.ToString("#,#0.00000000", new System.Globalization.CultureInfo("en-US")); if (currentBalance > 100) { currentBalanceString = Math.Round(currentBalance, 2).ToString("#,#0.00", new System.Globalization.CultureInfo("en-US")); } }
Start balence:   @Model.PTMagicConfiguration.GeneralSettings.Application.StartBalance @Model.Summary.MainMarket
Current value:   @currentBalanceString @Model.Summary.MainMarket
Gain:   @Math.Round(((currentBalance - Model.PTMagicConfiguration.GeneralSettings.Application.StartBalance) / Model.PTMagicConfiguration.GeneralSettings.Application.StartBalance) * 100, 2) %
@if (!Model.ProfitChartDataJSON.Equals("")) {
} else {

Unable to load graph, no sales data found.

}

Market Trends at @Model.PTMagicConfiguration.GeneralSettings.Application.Exchangemore

@foreach (var marketTrend in Model.MarketTrends.OrderBy(mt => mt.TrendMinutes)) { if (Model.Summary.MarketTrendChanges.ContainsKey(marketTrend.Name)) { double trendChange = Model.Summary.MarketTrendChanges[marketTrend.Name].OrderByDescending(mtc => mtc.TrendDateTime).First().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(); } } }
Name Markets Timeframe Change
@Core.Helper.SystemHelper.SplitCamelCase(marketTrend.Name) @marketCountString @Core.Helper.SystemHelper.GetProperDurationTime(marketTrend.TrendMinutes * 60, false) @trendChangeOutput%

Sales Overviewmore

@{ double totalProfit = Model.PTData.SellLog.Sum(s => s.Profit); double totalProfitFiat = Math.Round(totalProfit * Model.Summary.MainMarketPrice, 2); double percentGain = Math.Round(totalProfit / Model.PTMagicConfiguration.GeneralSettings.Application.StartBalance * 100, 2); string percentGainText = percentGain.ToString("#,#0.00", new System.Globalization.CultureInfo("en-US")) + "%"; if (Model.PTData.TransactionData.Transactions.Count > 0) { percentGainText = ""; } double todaysStartBalance = Model.PTData.GetSnapshotBalance(Model.DateTimeNow.DateTime); double todaysProfit = Model.PTData.SellLogToday.Sum(s => s.Profit); double todaysProfitFiat = Math.Round(todaysProfit * Model.Summary.MainMarketPrice, 2); double todaysPercentGain = Math.Round(todaysProfit / todaysStartBalance * 100, 2); double yesterdaysStartBalance = Model.PTData.GetSnapshotBalance(Model.DateTimeNow.DateTime.AddDays(-1)); double yesterdaysProfit = Model.PTData.SellLogYesterday.Sum(s => s.Profit); double yesterdaysProfitFiat = Math.Round(yesterdaysProfit * Model.Summary.MainMarketPrice, 2); double yesterdaysPercentGain = Math.Round(yesterdaysProfit / yesterdaysStartBalance * 100, 2); double last7DaysStartBalance = Model.PTData.GetSnapshotBalance(Model.DateTimeNow.DateTime.AddDays(-7)); double last7DaysProfit = Model.PTData.SellLogLast7Days.Sum(s => s.Profit); double last7DaysProfitFiat = Math.Round(last7DaysProfit * Model.Summary.MainMarketPrice, 2); double last7DaysPercentGain = Math.Round(last7DaysProfit / last7DaysStartBalance * 100, 2); double last30DaysStartBalance = Model.PTData.GetSnapshotBalance(Model.DateTimeNow.DateTime.AddDays(-30)); double last30DaysProfit = Model.PTData.SellLogLast30Days.Sum(s => s.Profit); double last30DaysProfitFiat = Math.Round(last30DaysProfit * Model.Summary.MainMarketPrice, 2); double last30DaysPercentGain = Math.Round(last30DaysProfit / last30DaysStartBalance * 100, 2); }
Sales Profit @Model.Summary.MainMarket Profit @Model.Summary.MainFiatCurrency % Gain
Today @Model.PTData.SellLogToday.Count @todaysProfit.ToString("#,#0.00000000", new System.Globalization.CultureInfo("en-US")) @Html.Raw(Model.MainFiatCurrencySymbol + todaysProfitFiat.ToString("#,#0.00", new System.Globalization.CultureInfo("en-US"))) @todaysPercentGain.ToString("#,#0.00", new System.Globalization.CultureInfo("en-US"))%
Yesterday @Model.PTData.SellLogYesterday.Count @yesterdaysProfit.ToString("#,#0.00000000", new System.Globalization.CultureInfo("en-US")) @Html.Raw(Model.MainFiatCurrencySymbol + yesterdaysProfitFiat.ToString("#,#0.00", new System.Globalization.CultureInfo("en-US"))) @yesterdaysPercentGain.ToString("#,#0.00", new System.Globalization.CultureInfo("en-US"))%
Last 7 Days @Model.PTData.SellLogLast7Days.Count @last7DaysProfit.ToString("#,#0.00000000", new System.Globalization.CultureInfo("en-US")) @Html.Raw(Model.MainFiatCurrencySymbol + last7DaysProfitFiat.ToString("#,#0.00", new System.Globalization.CultureInfo("en-US"))) @last7DaysPercentGain.ToString("#,#0.00", new System.Globalization.CultureInfo("en-US"))%
Last 30 Days @Model.PTData.SellLogLast30Days.Count @last30DaysProfit.ToString("#,#0.00000000", new System.Globalization.CultureInfo("en-US")) @Html.Raw(Model.MainFiatCurrencySymbol + last30DaysProfitFiat.ToString("#,#0.00", new System.Globalization.CultureInfo("en-US"))) @last30DaysPercentGain.ToString("#,#0.00", new System.Globalization.CultureInfo("en-US"))%
Total @Model.PTData.SellLog.Count @totalProfit.ToString("#,#0.00000000", new System.Globalization.CultureInfo("en-US")) @Html.Raw(Model.MainFiatCurrencySymbol + totalProfitFiat.ToString("#,#0.00", new System.Globalization.CultureInfo("en-US"))) @Html.Raw(percentGainText)