From 7010e5bf7a06e71b6393993f3e9332cd35a9c934 Mon Sep 17 00:00:00 2001 From: HojouFotytu <36724681+HojouFotytu@users.noreply.github.com> Date: Fri, 16 Apr 2021 12:26:31 +0900 Subject: [PATCH 1/3] fix missing quotes in default analyzer --- .../settings.analyzer.json | 90 +++++++++---------- .../DevSettings/settings.analyzer.json | 50 +++++------ 2 files changed, 70 insertions(+), 70 deletions(-) diff --git a/PTMagic/_defaults/_default_settings_PT_2.x/settings.analyzer.json b/PTMagic/_defaults/_default_settings_PT_2.x/settings.analyzer.json index db5f9c9..d1b0744 100644 --- a/PTMagic/_defaults/_default_settings_PT_2.x/settings.analyzer.json +++ b/PTMagic/_defaults/_default_settings_PT_2.x/settings.analyzer.json @@ -11,20 +11,20 @@ "AnalyzerSettings": { "MarketAnalyzer": { "StoreDataMaxHours": 48, // Number of hours to store market data - "IntervalMinutes": 2, // Interval in minutes for PTMagic to check market trends and triggers + "IntervalMinutes": 2, // Interval in minutes for PTMagic to check market trends and triggers "ExcludeMainCurrency": true, // Excludes the main currency (for example BTC) from market trend analysis "MarketTrends": [ { "Name": "1h", // UNIQUE market trend name (to be referenced by your triggers below) "Platform": "Exchange", // Platform to grab prices from (Allowed values are: CoinMarketCap, Exchange) - "MaxMarkets": 50, // Number of markets/pairs to analyze sorted by 24h volume + "MaxMarkets": 50, // Number of markets/pairs to analyze sorted by 24h volume "TrendMinutes": 60, // Number of minutes to build a trend (1440 = 24h, 720 = 12h, 60 = 1h) "TrendCurrency": "Market", // Trend Currency to build the trend against. If set to "Fiat", the trend will - // take the USD value of your main currency into account to build the trend. + // take the USD value of your main currency into account to build the trend. // "Market" will build a trend against your base currency, such as BTC or USDT. "TrendThreshold": 15, // Any coin that is above 15% or below -15% for this timeframe will not be used when calculating the market average. - "DisplayGraph": false, // Use this trend in the graph on the PTM Monitor dashboard and market analyzer - "DisplayOnMarketAnalyzerList": false // Disply this trend for all coins on the PTM Monitor market analyzer + "DisplayGraph": false, // Use this trend in the graph on the PTM Monitor dashboard and market analyzer + "DisplayOnMarketAnalyzerList": false // Disply this trend for all coins on the PTM Monitor market analyzer }, { "Name": "6h", @@ -33,8 +33,8 @@ "TrendMinutes": 360, "TrendCurrency": "Market", "TrendThreshold": 30, - "DisplayGraph": true, - "DisplayOnMarketAnalyzerList": true + "DisplayGraph": true, + "DisplayOnMarketAnalyzerList": true }, { "Name": "12h", @@ -43,8 +43,8 @@ "TrendMinutes": 720, "TrendCurrency": "Market", "TrendThreshold": 50, - "DisplayGraph": true, - "DisplayOnMarketAnalyzerList": true + "DisplayGraph": true, + "DisplayOnMarketAnalyzerList": true }, { "Name": "24h", @@ -53,17 +53,17 @@ "TrendMinutes": 1440, "TrendCurrency": "Market", "TrendThreshold": 75, - "DisplayGraph": true, - "DisplayOnMarketAnalyzerList": true + "DisplayGraph": true, + "DisplayOnMarketAnalyzerList": true } ] }, // ================================ GLOBAL SETTINGS ================================ // "GlobalSettings": [ // Global settings for Profit Trailer properties - // - // =================================================================================== - // ----------------------------- + // + // =================================================================================== + // ----------------------------- { "SettingName": "EndOfTheWorld", // ANY UNIQUE name of your setting "TriggerConnection": "AND", // Define if triggers will be connected by AND or OR @@ -84,14 +84,14 @@ "PairsProperties": { // Properties for PAIRS.PROPERTIES // Any valid setting from https://wiki.profittrailer.com/en/config can be used here. // You can use a specific value, or apply a discrete OFFSET or OFFSETPERCENT to the value in your default PAIRS setting. - "DEFAULT_sell_only_mode_enabled": true, + "DEFAULT_sell_only_mode_enabled": "true", "DEFAULT_trailing_profit_OFFSETPERCENT": -50 }, "DCAProperties": { // Properties for DCA.PROPERTIES "DEFAULT_DCA_trailing_profit_OFFSETPERCENT": -75 } }, - // ----------------------------- + // ----------------------------- { "SettingName": "TankingDown", "TriggerConnection": "AND", @@ -123,10 +123,10 @@ "DEFAULT_DCA_trailing_buy_OFFSETPERCENT": 25, "DEFAULT_DCA_trailing_profit_OFFSETPERCENT": -50 }, - "IndicatorsProperties": { + "IndicatorsProperties": { } }, - // ----------------------------- + // ----------------------------- { "SettingName": "BearSighted", "TriggerConnection": "AND", @@ -156,7 +156,7 @@ "DEFAULT_DCA_trailing_buy_OFFSETPERCENT": 10, "DEFAULT_DCA_trailing_profit_OFFSETPERCENT": -10, }, - "IndicatorsProperties": { + "IndicatorsProperties": { } }, // ----------------------------- @@ -182,17 +182,17 @@ "max_trading_pairs_OFFSET": 1, //"DEFAULT_initial_cost_OFFSETPERCENT": 10, //"DEFAULT_initial_cost_percentage_OFFSETPERCENT": 10, - "DEFAULT_trailing_buy_OFFSETPERCENT": -10, + "DEFAULT_trailing_buy_OFFSETPERCENT": -10, "DEFAULT_A_sell_value_OFFSETPERCENT": 10 }, "DCAProperties": { "DEFAULT_DCA_trailing_buy_OFFSETPERCENT": -10, "DEFAULT_DCA_trailing_profit_OFFSETPERCENT": 10, }, - "IndicatorsProperties": { + "IndicatorsProperties": { } }, - // ----------------------------- + // ----------------------------- { "SettingName": "ToTheMoon", "TriggerConnection": "AND", @@ -214,14 +214,14 @@ "max_trading_pairs_OFFSET": 2, //"DEFAULT_initial_cost_OFFSETPERCENT": 20, //"DEFAULT_initial_cost_percentage_OFFSETPERCENT": 20, - "DEFAULT_trailing_buy_OFFSETPERCENT": -10, + "DEFAULT_trailing_buy_OFFSETPERCENT": -10, "DEFAULT_A_sell_value_OFFSETPERCENT": 20 }, "DCAProperties": { "DEFAULT_DCA_trailing_buy_OFFSETPERCENT": -20, "DEFAULT_DCA_trailing_profit_OFFSETPERCENT": 20, }, - "IndicatorsProperties": { + "IndicatorsProperties": { } }, // ----------------------------- @@ -241,9 +241,9 @@ // ================================ COIN-SPECIFIC SETTINGS ================================ // "SingleMarketSettings": [ // Single market/pair settings for Profit Trailer properties - // Any setting from https://wiki.profittrailer.com/doku.php?id=pairs.properties - // marked as CS (coin-specific) can be used here. - // Only coins that meet the triggered conditions will have the settings applied. + // Any setting from https://wiki.profittrailer.com/en/config + // marked as CS (coin-specific) can be used here. + // Only coins that meet the triggered conditions will have the settings applied. { "SettingName": "BlacklistCoins", "StopProcessWhenTriggered": true, @@ -253,12 +253,12 @@ } ], "PairsProperties": { - "DEFAULT_trading_enabled": false, - "DEFAULT_sell_only_mode_enabled": true, - "DEFAULT_DCA_enabled": false + "DEFAULT_trading_enabled": "false", + "DEFAULT_sell_only_mode_enabled": "true", + "DEFAULT_DCA_enabled": "false" } }, - // ----------------------------- + // ----------------------------- { "SettingName": "PumpNDumpProtection", "TriggerConnection": "OR", @@ -266,8 +266,8 @@ { "MarketTrendName": "1h", "MarketTrendRelation": "Relative", // The relation of the single market trend. Relative = Single market - // trend compared relative to the market trend - // Absolute = Single market trend viewed on its own + // trend compared relative to the market trend + // Absolute = Single market trend viewed on its own "MinChange": 8 }, { @@ -281,18 +281,18 @@ "MinChange": 12 } ], - "OffTriggers": [ - { - "HoursSinceTriggered": 3 // Any coin that triggers this setting, will remain under this setting - // for 3 hours, since the last time it triggered. + "OffTriggers": [ + { + "HoursSinceTriggered": 3 // Any coin that triggers this setting, will remain under this setting + // for 3 hours, since the last time it triggered. } ], "PairsProperties": { - "DEFAULT_sell_only_mode_enabled": true, - "DEFAULT_DCA_enabled": false + "DEFAULT_sell_only_mode_enabled": "true", + "DEFAULT_DCA_enabled": "false" } }, - // ----------------------------- + // ----------------------------- { "SettingName": "FreefallBlock", "TriggerConnection": "OR", @@ -303,14 +303,14 @@ "MaxChange": -5 } ], - "OffTriggers": [ - { + "OffTriggers": [ + { "HoursSinceTriggered": 1 } ], - "PairsProperties": { - "DEFAULT_sell_only_mode_enabled": true, - "DEFAULT_DCA_enabled": false + "PairsProperties": { + "DEFAULT_sell_only_mode_enabled": "true", + "DEFAULT_DCA_enabled": "false" } } ] diff --git a/_Development/DevSettings/settings.analyzer.json b/_Development/DevSettings/settings.analyzer.json index baf14ff..d1b0744 100644 --- a/_Development/DevSettings/settings.analyzer.json +++ b/_Development/DevSettings/settings.analyzer.json @@ -84,7 +84,7 @@ "PairsProperties": { // Properties for PAIRS.PROPERTIES // Any valid setting from https://wiki.profittrailer.com/en/config can be used here. // You can use a specific value, or apply a discrete OFFSET or OFFSETPERCENT to the value in your default PAIRS setting. - "DEFAULT_sell_only_mode_enabled": true, + "DEFAULT_sell_only_mode_enabled": "true", "DEFAULT_trailing_profit_OFFSETPERCENT": -50 }, "DCAProperties": { // Properties for DCA.PROPERTIES @@ -112,16 +112,16 @@ ], "PairsProperties": { "max_trading_pairs_OFFSET": -2, - "DEFAULT_min_buy_volume_OFFSETPERCENT": 100, - //"DEFAULT_initial_cost_OFFSETPERCENT": -50, - //"DEFAULT_initial_cost_percentage_OFFSETPERCENT": -50, + "DEFAULT_min_buy_volume_OFFSETPERCENT": 100, + //"DEFAULT_initial_cost_OFFSETPERCENT": -50, + //"DEFAULT_initial_cost_percentage_OFFSETPERCENT": -50, "DEFAULT_trailing_buy_OFFSETPERCENT": 25, "DEFAULT_trailing_profit_OFFSETPERCENT": -25 }, "DCAProperties": { //"DEFAULT_DCA_rebuy_timeout_OFFSETPERCENT": 100, "DEFAULT_DCA_trailing_buy_OFFSETPERCENT": 25, - "DEFAULT_DCA_trailing_profit_OFFSETPERCENT": -50 + "DEFAULT_DCA_trailing_profit_OFFSETPERCENT": -50 }, "IndicatorsProperties": { } @@ -147,14 +147,14 @@ ], "PairsProperties": { "max_trading_pairs_OFFSET": -1, - //"DEFAULT_initial_cost_OFFSETPERCENT": -25, - //"DEFAULT_initial_cost_percentage_OFFSETPERCENT": -25, + //"DEFAULT_initial_cost_OFFSETPERCENT": -25, + //"DEFAULT_initial_cost_percentage_OFFSETPERCENT": -25, "DEFAULT_trailing_buy_OFFSETPERCENT": 10, "DEFAULT_trailing_profit_OFFSETPERCENT": -10 }, "DCAProperties": { "DEFAULT_DCA_trailing_buy_OFFSETPERCENT": 10, - "DEFAULT_DCA_trailing_profit_OFFSETPERCENT": -10, + "DEFAULT_DCA_trailing_profit_OFFSETPERCENT": -10, }, "IndicatorsProperties": { } @@ -180,14 +180,14 @@ ], "PairsProperties": { "max_trading_pairs_OFFSET": 1, - //"DEFAULT_initial_cost_OFFSETPERCENT": 10, - //"DEFAULT_initial_cost_percentage_OFFSETPERCENT": 10, - "DEFAULT_trailing_buy_OFFSETPERCENT": -10, + //"DEFAULT_initial_cost_OFFSETPERCENT": 10, + //"DEFAULT_initial_cost_percentage_OFFSETPERCENT": 10, + "DEFAULT_trailing_buy_OFFSETPERCENT": -10, "DEFAULT_A_sell_value_OFFSETPERCENT": 10 }, "DCAProperties": { "DEFAULT_DCA_trailing_buy_OFFSETPERCENT": -10, - "DEFAULT_DCA_trailing_profit_OFFSETPERCENT": 10, + "DEFAULT_DCA_trailing_profit_OFFSETPERCENT": 10, }, "IndicatorsProperties": { } @@ -212,14 +212,14 @@ ], "PairsProperties": { "max_trading_pairs_OFFSET": 2, - //"DEFAULT_initial_cost_OFFSETPERCENT": 20, - //"DEFAULT_initial_cost_percentage_OFFSETPERCENT": 20, - "DEFAULT_trailing_buy_OFFSETPERCENT": -10, + //"DEFAULT_initial_cost_OFFSETPERCENT": 20, + //"DEFAULT_initial_cost_percentage_OFFSETPERCENT": 20, + "DEFAULT_trailing_buy_OFFSETPERCENT": -10, "DEFAULT_A_sell_value_OFFSETPERCENT": 20 }, "DCAProperties": { "DEFAULT_DCA_trailing_buy_OFFSETPERCENT": -20, - "DEFAULT_DCA_trailing_profit_OFFSETPERCENT": 20, + "DEFAULT_DCA_trailing_profit_OFFSETPERCENT": 20, }, "IndicatorsProperties": { } @@ -253,9 +253,9 @@ } ], "PairsProperties": { - "DEFAULT_trading_enabled": false, - "DEFAULT_sell_only_mode_enabled": true, - "DEFAULT_DCA_enabled": false + "DEFAULT_trading_enabled": "false", + "DEFAULT_sell_only_mode_enabled": "true", + "DEFAULT_DCA_enabled": "false" } }, // ----------------------------- @@ -267,7 +267,7 @@ "MarketTrendName": "1h", "MarketTrendRelation": "Relative", // The relation of the single market trend. Relative = Single market // trend compared relative to the market trend - // Absolute = Single market trend viewed on its own + // Absolute = Single market trend viewed on its own "MinChange": 8 }, { @@ -284,12 +284,12 @@ "OffTriggers": [ { "HoursSinceTriggered": 3 // Any coin that triggers this setting, will remain under this setting - // for 3 hours, since the last time it triggered. + // for 3 hours, since the last time it triggered. } ], "PairsProperties": { - "DEFAULT_sell_only_mode_enabled": true, - "DEFAULT_DCA_enabled": false + "DEFAULT_sell_only_mode_enabled": "true", + "DEFAULT_DCA_enabled": "false" } }, // ----------------------------- @@ -309,8 +309,8 @@ } ], "PairsProperties": { - "DEFAULT_sell_only_mode_enabled": true, - "DEFAULT_DCA_enabled": false + "DEFAULT_sell_only_mode_enabled": "true", + "DEFAULT_DCA_enabled": "false" } } ] From c02b16b948e71d629ac07f59c8e9d4fa46624925 Mon Sep 17 00:00:00 2001 From: HojouFotytu <36724681+HojouFotytu@users.noreply.github.com> Date: Wed, 21 Apr 2021 15:33:07 +0900 Subject: [PATCH 2/3] Settings GUI changes --- Core/Main/PTMagic.cs | 19 +++++++------ Monitor/Pages/SettingsGeneral.cshtml | 37 ++++++++++++------------- Monitor/Pages/SettingsGeneral.cshtml.cs | 10 +++---- PTMagic/Program.cs | 2 +- 4 files changed, 35 insertions(+), 33 deletions(-) diff --git a/Core/Main/PTMagic.cs b/Core/Main/PTMagic.cs index 7001425..29b198d 100644 --- a/Core/Main/PTMagic.cs +++ b/Core/Main/PTMagic.cs @@ -701,13 +701,13 @@ namespace Core.Main // Check if the program is enabled if (this.PTMagicConfiguration.GeneralSettings.Application.IsEnabled) { + result = RunProfitTrailerSettingsAPIChecks(); try { if (this.PTMagicConfiguration.GeneralSettings.Application.TestMode) { - this.Log.DoLogInfo("TESTMODE ENABLED - No files will be changed!"); + this.Log.DoLogWarn("TESTMODE ENABLED - No PT settings will be changed!"); } - result = RunProfitTrailerSettingsAPIChecks(); // Check for CoinMarketCap API Key if (!String.IsNullOrEmpty(this.PTMagicConfiguration.GeneralSettings.Application.CoinMarketCapAPIKey)) @@ -731,7 +731,7 @@ namespace Core.Main } catch (System.NullReferenceException) { - this.Log.DoLogError("PTM failed to read the Config File. That means something in the File is either missing or incorrect. If this happend after an update please take a look at the release notes at: https://github.com/PTMagicians/PTMagic/releases"); + this.Log.DoLogError("PTM failed to read the General Settings file. That means something in the file is either missing or incorrect. If this happend after an update please take a look at the release notes at: https://github.com/PTMagicians/PTMagic/releases"); Console.WriteLine("Press enter to close the Application..."); Console.ReadLine(); Environment.Exit(0); @@ -739,7 +739,7 @@ namespace Core.Main } else { - this.Log.DoLogWarn("PTMagic disabled, shutting down..."); + this.Log.DoLogWarn("PTMagic is disabled. The scheduled raid was skipped."); result = false; } @@ -952,7 +952,7 @@ namespace Core.Main this.Log.DoLogInfo("+ Active setting: " + this.LastRuntimeSummary.CurrentGlobalSetting.SettingName); this.Log.DoLogInfo("+ Global setting changed: " + ((this.LastRuntimeSummary.LastGlobalSettingSwitch == this.LastRuntimeSummary.LastRuntime) ? "Yes" : "No") + " " + ((this.LastRuntimeSummary.FloodProtectedSetting != null) ? "(Flood protection!)" : "")); this.Log.DoLogInfo("+ Single Market Settings changed: " + (this.SingleMarketSettingChanged ? "Yes" : "No")); - this.Log.DoLogInfo("+ PT Config updated: " + (((this.GlobalSettingWritten || this.SingleMarketSettingChanged) && !this.PTMagicConfiguration.GeneralSettings.Application.TestMode) ? "Yes" : "No")); + this.Log.DoLogInfo("+ PT Config updated: " + (((this.GlobalSettingWritten || this.SingleMarketSettingChanged) && !this.PTMagicConfiguration.GeneralSettings.Application.TestMode) ? "Yes" : "No") + ((this.PTMagicConfiguration.GeneralSettings.Application.TestMode) ? " - TESTMODE active" : "")); this.Log.DoLogInfo("+ Markets with active single market settings: " + this.TriggeredSingleMarketSettings.Count.ToString()); foreach (string activeSMS in this.SingleMarketSettingsCount.Keys) { @@ -969,7 +969,7 @@ namespace Core.Main else { this.State = Constants.PTMagicBotState_Idle; - Log.DoLogWarn("PTMagic disabled, shutting down until next raid..."); + Log.DoLogWarn("PTMagic is disabled. The scheduled raid was skipped."); } } catch (Exception ex) @@ -2194,9 +2194,12 @@ namespace Core.Main if (!this.PTMagicConfiguration.GeneralSettings.Application.TestMode) { SettingsAPI.SendPropertyLinesToAPI(this.PairsLines, this.DCALines, this.IndicatorsLines, this.PTMagicConfiguration, this.Log); + this.Log.DoLogInfo("Settings updates sent to PT!"); + } + else + { + this.Log.DoLogWarn("TESTMODE enabled -- no updates sent to PT!"); } - - this.Log.DoLogInfo("Properties saved!"); } else { diff --git a/Monitor/Pages/SettingsGeneral.cshtml b/Monitor/Pages/SettingsGeneral.cshtml index bd8a46a..20f0d27 100644 --- a/Monitor/Pages/SettingsGeneral.cshtml +++ b/Monitor/Pages/SettingsGeneral.cshtml @@ -48,24 +48,30 @@
- +
- +
- -
- @Model.PTMagicConfiguration.GeneralSettings.Application.Exchange -
+ +
+ +
@@ -77,16 +83,16 @@
- +
- @Model.PTMagicConfiguration.GeneralSettings.Application.ProfitTrailerMonitorURL +
- @Model.PTMagicConfiguration.GetProfitTrailerServerAPITokenMasked() +
@@ -170,23 +176,16 @@
- +
- +
- @Model.PTMagicConfiguration.GeneralSettings.Monitor.Port -
-
- -
- -
- @Model.PTMagicConfiguration.GeneralSettings.Monitor.RootUrl +
diff --git a/Monitor/Pages/SettingsGeneral.cshtml.cs b/Monitor/Pages/SettingsGeneral.cshtml.cs index 5a031e3..d5f3c1e 100644 --- a/Monitor/Pages/SettingsGeneral.cshtml.cs +++ b/Monitor/Pages/SettingsGeneral.cshtml.cs @@ -70,19 +70,19 @@ namespace Monitor.Pages PTMagicConfiguration.GeneralSettings.Application.TestMode = HttpContext.Request.Form["Application_TestMode"].Equals("on"); PTMagicConfiguration.GeneralSettings.Application.StartBalance = SystemHelper.TextToDouble(HttpContext.Request.Form["Application_StartBalance"], PTMagicConfiguration.GeneralSettings.Application.StartBalance, "en-US"); PTMagicConfiguration.GeneralSettings.Application.ProfitTrailerDefaultSettingName = HttpContext.Request.Form["Application_ProfitTrailerDefaultSettingName"]; - + PTMagicConfiguration.GeneralSettings.Application.Exchange = HttpContext.Request.Form["Application_Exchange"]; + PTMagicConfiguration.GeneralSettings.Application.ProfitTrailerMonitorURL = HttpContext.Request.Form["Application_ProfitTrailerMonitorURL"]; + PTMagicConfiguration.GeneralSettings.Application.ProfitTrailerServerAPIToken = HttpContext.Request.Form["Application_ProfitTrailerServerAPIToken"]; PTMagicConfiguration.GeneralSettings.Application.TimezoneOffset = HttpContext.Request.Form["Application_TimezoneOffset"]; PTMagicConfiguration.GeneralSettings.Application.MainFiatCurrency = HttpContext.Request.Form["Application_MainFiatCurrency"]; - - PTMagicConfiguration.GeneralSettings.Application.FloodProtectionMinutes = SystemHelper.TextToInteger(HttpContext.Request.Form["Application_FloodProtectionMinutes"], PTMagicConfiguration.GeneralSettings.Application.FloodProtectionMinutes); PTMagicConfiguration.GeneralSettings.Application.InstanceName = HttpContext.Request.Form["Application_InstanceName"]; PTMagicConfiguration.GeneralSettings.Application.CoinMarketCapAPIKey = HttpContext.Request.Form["Application_CoinMarketCapAPIKey"]; PTMagicConfiguration.GeneralSettings.Application.FreeCurrencyConverterAPIKey = HttpContext.Request.Form["Application_FreeCurrencyConverterAPIKey"]; - PTMagicConfiguration.GeneralSettings.Monitor.IsPasswordProtected = HttpContext.Request.Form["Monitor_IsPasswordProtected"].Equals("on"); PTMagicConfiguration.GeneralSettings.Monitor.OpenBrowserOnStart = HttpContext.Request.Form["Monitor_OpenBrowserOnStart"].Equals("on"); - PTMagicConfiguration.GeneralSettings.Monitor.DefaultDCAMode = HttpContext.Request.Form["Monitor_AnalyzerChart"]; + PTMagicConfiguration.GeneralSettings.Monitor.AnalyzerChart = HttpContext.Request.Form["Monitor_AnalyzerChart"]; + PTMagicConfiguration.GeneralSettings.Monitor.Port = SystemHelper.TextToInteger(HttpContext.Request.Form["Monitor_Port"], PTMagicConfiguration.GeneralSettings.Monitor.Port); PTMagicConfiguration.GeneralSettings.Monitor.GraphIntervalMinutes = SystemHelper.TextToInteger(HttpContext.Request.Form["Monitor_GraphIntervalMinutes"], PTMagicConfiguration.GeneralSettings.Monitor.GraphIntervalMinutes); PTMagicConfiguration.GeneralSettings.Monitor.GraphMaxTimeframeHours = SystemHelper.TextToInteger(HttpContext.Request.Form["Monitor_GraphMaxTimeframeHours"], PTMagicConfiguration.GeneralSettings.Monitor.GraphMaxTimeframeHours); PTMagicConfiguration.GeneralSettings.Monitor.RefreshSeconds = SystemHelper.TextToInteger(HttpContext.Request.Form["Monitor_RefreshSeconds"], PTMagicConfiguration.GeneralSettings.Monitor.RefreshSeconds); diff --git a/PTMagic/Program.cs b/PTMagic/Program.cs index 73e595d..7e510b4 100644 --- a/PTMagic/Program.cs +++ b/PTMagic/Program.cs @@ -6,7 +6,7 @@ using Core.Helper; using Microsoft.Extensions.DependencyInjection; -[assembly: AssemblyVersion("2.5.10")] +[assembly: AssemblyVersion("2.5.11")] [assembly: AssemblyProduct("PT Magic")] namespace PTMagic From 382df91de30c417f17a1bb442aad25f8eeb70d42 Mon Sep 17 00:00:00 2001 From: HojouFotytu Date: Wed, 21 Apr 2021 16:27:06 +0900 Subject: [PATCH 3/3] Undo settings.analyzer.json --- .../settings.analyzer.json | 318 ------------------ 1 file changed, 318 deletions(-) delete mode 100644 PTMagic/_defaults/_default_settings_PT_2.x/settings.analyzer.json diff --git a/PTMagic/_defaults/_default_settings_PT_2.x/settings.analyzer.json b/PTMagic/_defaults/_default_settings_PT_2.x/settings.analyzer.json deleted file mode 100644 index d1b0744..0000000 --- a/PTMagic/_defaults/_default_settings_PT_2.x/settings.analyzer.json +++ /dev/null @@ -1,318 +0,0 @@ -// -// The settings below offer a basic example of some of the options available when using PTMagic. -// You should take your time and adjust these settings according to your own personal preferences. -// Always test your PTMagic settings by running a Profit Trailer bot in TESTMODE, to make sure -// it is performing as you expect. -// -// For more information on these settings, see the wiki at: https://github.com/PTMagicians/PTMagic/wiki/settings.analyzer - - -{ - "AnalyzerSettings": { - "MarketAnalyzer": { - "StoreDataMaxHours": 48, // Number of hours to store market data - "IntervalMinutes": 2, // Interval in minutes for PTMagic to check market trends and triggers - "ExcludeMainCurrency": true, // Excludes the main currency (for example BTC) from market trend analysis - "MarketTrends": [ - { - "Name": "1h", // UNIQUE market trend name (to be referenced by your triggers below) - "Platform": "Exchange", // Platform to grab prices from (Allowed values are: CoinMarketCap, Exchange) - "MaxMarkets": 50, // Number of markets/pairs to analyze sorted by 24h volume - "TrendMinutes": 60, // Number of minutes to build a trend (1440 = 24h, 720 = 12h, 60 = 1h) - "TrendCurrency": "Market", // Trend Currency to build the trend against. If set to "Fiat", the trend will - // take the USD value of your main currency into account to build the trend. - // "Market" will build a trend against your base currency, such as BTC or USDT. - "TrendThreshold": 15, // Any coin that is above 15% or below -15% for this timeframe will not be used when calculating the market average. - "DisplayGraph": false, // Use this trend in the graph on the PTM Monitor dashboard and market analyzer - "DisplayOnMarketAnalyzerList": false // Disply this trend for all coins on the PTM Monitor market analyzer - }, - { - "Name": "6h", - "Platform": "Exchange", - "MaxMarkets": 50, - "TrendMinutes": 360, - "TrendCurrency": "Market", - "TrendThreshold": 30, - "DisplayGraph": true, - "DisplayOnMarketAnalyzerList": true - }, - { - "Name": "12h", - "Platform": "Exchange", - "MaxMarkets": 50, - "TrendMinutes": 720, - "TrendCurrency": "Market", - "TrendThreshold": 50, - "DisplayGraph": true, - "DisplayOnMarketAnalyzerList": true - }, - { - "Name": "24h", - "Platform": "Exchange", - "MaxMarkets": 50, - "TrendMinutes": 1440, - "TrendCurrency": "Market", - "TrendThreshold": 75, - "DisplayGraph": true, - "DisplayOnMarketAnalyzerList": true - } - ] - }, - // ================================ GLOBAL SETTINGS ================================ - // - "GlobalSettings": [ // Global settings for Profit Trailer properties - // - // =================================================================================== - // ----------------------------- - { - "SettingName": "EndOfTheWorld", // ANY UNIQUE name of your setting - "TriggerConnection": "AND", // Define if triggers will be connected by AND or OR - "Triggers": [ // Your triggers for this setting. You can use any of your defined trends from above - { - "MarketTrendName": "1h", // Reference to the market trend specified above - "MaxChange": 0 // The maximum value for this trigger to be true. (Any value below "0" will trigger this) - }, - { - "MarketTrendName": "12h", - "MaxChange": -2 - }, - { - "MarketTrendName": "24h", - "MaxChange": -5 - } - ], - "PairsProperties": { // Properties for PAIRS.PROPERTIES - // Any valid setting from https://wiki.profittrailer.com/en/config can be used here. - // You can use a specific value, or apply a discrete OFFSET or OFFSETPERCENT to the value in your default PAIRS setting. - "DEFAULT_sell_only_mode_enabled": "true", - "DEFAULT_trailing_profit_OFFSETPERCENT": -50 - }, - "DCAProperties": { // Properties for DCA.PROPERTIES - "DEFAULT_DCA_trailing_profit_OFFSETPERCENT": -75 - } - }, - // ----------------------------- - { - "SettingName": "TankingDown", - "TriggerConnection": "AND", - "Triggers": [ - { - "MarketTrendName": "1h", - "MaxChange": 0 - }, - { - "MarketTrendName": "12h", - "MaxChange": 0 - }, - { - "MarketTrendName": "24h", // Any value between -5 and -3 will make this trigger true. - "MaxChange": -3, - "MinChange": -5 // The minimum value for this trigger to be true. (Any value above "-5" will trigger this) - } - ], - "PairsProperties": { - "max_trading_pairs_OFFSET": -2, - "DEFAULT_min_buy_volume_OFFSETPERCENT": 100, - //"DEFAULT_initial_cost_OFFSETPERCENT": -50, - //"DEFAULT_initial_cost_percentage_OFFSETPERCENT": -50, - "DEFAULT_trailing_buy_OFFSETPERCENT": 25, - "DEFAULT_trailing_profit_OFFSETPERCENT": -25 - }, - "DCAProperties": { - //"DEFAULT_DCA_rebuy_timeout_OFFSETPERCENT": 100, - "DEFAULT_DCA_trailing_buy_OFFSETPERCENT": 25, - "DEFAULT_DCA_trailing_profit_OFFSETPERCENT": -50 - }, - "IndicatorsProperties": { - } - }, - // ----------------------------- - { - "SettingName": "BearSighted", - "TriggerConnection": "AND", - "Triggers": [ - { - "MarketTrendName": "1h", - "MaxChange": 1 - }, - { - "MarketTrendName": "12h", - "MaxChange": 0 - }, - { - "MarketTrendName": "24h", - "MaxChange": -1, - "MinChange": -3 - } - ], - "PairsProperties": { - "max_trading_pairs_OFFSET": -1, - //"DEFAULT_initial_cost_OFFSETPERCENT": -25, - //"DEFAULT_initial_cost_percentage_OFFSETPERCENT": -25, - "DEFAULT_trailing_buy_OFFSETPERCENT": 10, - "DEFAULT_trailing_profit_OFFSETPERCENT": -10 - }, - "DCAProperties": { - "DEFAULT_DCA_trailing_buy_OFFSETPERCENT": 10, - "DEFAULT_DCA_trailing_profit_OFFSETPERCENT": -10, - }, - "IndicatorsProperties": { - } - }, - // ----------------------------- - { - "SettingName": "ReadyForLiftOff", - "TriggerConnection": "AND", - "Triggers": [ - { - "MarketTrendName": "1h", - "MinChange": 0 - }, - { - "MarketTrendName": "12h", - "MinChange": 0 - }, - { - "MarketTrendName": "24h", - "MinChange": 1, - "MaxChange": 3 - } - ], - "PairsProperties": { - "max_trading_pairs_OFFSET": 1, - //"DEFAULT_initial_cost_OFFSETPERCENT": 10, - //"DEFAULT_initial_cost_percentage_OFFSETPERCENT": 10, - "DEFAULT_trailing_buy_OFFSETPERCENT": -10, - "DEFAULT_A_sell_value_OFFSETPERCENT": 10 - }, - "DCAProperties": { - "DEFAULT_DCA_trailing_buy_OFFSETPERCENT": -10, - "DEFAULT_DCA_trailing_profit_OFFSETPERCENT": 10, - }, - "IndicatorsProperties": { - } - }, - // ----------------------------- - { - "SettingName": "ToTheMoon", - "TriggerConnection": "AND", - "Triggers": [ - { - "MarketTrendName": "1h", - "MinChange": 1 - }, - { - "MarketTrendName": "12h", - "MinChange": 1 - }, - { - "MarketTrendName": "24h", - "MinChange": 3 - } - ], - "PairsProperties": { - "max_trading_pairs_OFFSET": 2, - //"DEFAULT_initial_cost_OFFSETPERCENT": 20, - //"DEFAULT_initial_cost_percentage_OFFSETPERCENT": 20, - "DEFAULT_trailing_buy_OFFSETPERCENT": -10, - "DEFAULT_A_sell_value_OFFSETPERCENT": 20 - }, - "DCAProperties": { - "DEFAULT_DCA_trailing_buy_OFFSETPERCENT": -20, - "DEFAULT_DCA_trailing_profit_OFFSETPERCENT": 20, - }, - "IndicatorsProperties": { - } - }, - // ----------------------------- - { - "SettingName": "Default", - "PairsProperties": { - "File": "PAIRS.properties" - }, - "DCAProperties": { - "File": "DCA.properties" - }, - "IndicatorsProperties": { - "File": "INDICATORS.properties" - } - } - ], - // ================================ COIN-SPECIFIC SETTINGS ================================ - // - "SingleMarketSettings": [ // Single market/pair settings for Profit Trailer properties - // Any setting from https://wiki.profittrailer.com/en/config - // marked as CS (coin-specific) can be used here. - // Only coins that meet the triggered conditions will have the settings applied. - { - "SettingName": "BlacklistCoins", - "StopProcessWhenTriggered": true, - "Triggers": [ - { - "AgeDaysLowerThan": 21 - } - ], - "PairsProperties": { - "DEFAULT_trading_enabled": "false", - "DEFAULT_sell_only_mode_enabled": "true", - "DEFAULT_DCA_enabled": "false" - } - }, - // ----------------------------- - { - "SettingName": "PumpNDumpProtection", - "TriggerConnection": "OR", - "Triggers": [ - { - "MarketTrendName": "1h", - "MarketTrendRelation": "Relative", // The relation of the single market trend. Relative = Single market - // trend compared relative to the market trend - // Absolute = Single market trend viewed on its own - "MinChange": 8 - }, - { - "MarketTrendName": "12h", - "MarketTrendRelation": "Relative", - "MinChange": 10 - }, - { - "MarketTrendName": "24h", - "MarketTrendRelation": "Relative", - "MinChange": 12 - } - ], - "OffTriggers": [ - { - "HoursSinceTriggered": 3 // Any coin that triggers this setting, will remain under this setting - // for 3 hours, since the last time it triggered. - } - ], - "PairsProperties": { - "DEFAULT_sell_only_mode_enabled": "true", - "DEFAULT_DCA_enabled": "false" - } - }, - // ----------------------------- - { - "SettingName": "FreefallBlock", - "TriggerConnection": "OR", - "Triggers": [ - { - "MarketTrendName": "1h", - "MarketTrendRelation": "Absolute", - "MaxChange": -5 - } - ], - "OffTriggers": [ - { - "HoursSinceTriggered": 1 - } - ], - "PairsProperties": { - "DEFAULT_sell_only_mode_enabled": "true", - "DEFAULT_DCA_enabled": "false" - } - } - ] - } -} \ No newline at end of file