DW
    
        
            Display Parameter Input as text on chart
            
                 31 Dec 2020, 07:20
            
                    
Objective: To display Parameter Input as Text on Chart
The below code displays on chart as: Lots:
using System;
using System.Linq;
using cAlgo.API;
using cAlgo.API.Indicators;
using cAlgo.API.Internals;
using cAlgo.Indicators;
namespace cAlgo
{
    [Robot(TimeZone = TimeZones.UTC, AccessRights = AccessRights.None)]
    public class AKBTR : Robot
    {
        [Parameter("Lots", Group = "Parameters", DefaultValue = 0.01)]
        public double defaultLots { get; set; }
        private const string paraTXT = "Lots: "  + "  " + "\n\n\n\n  ";
The objective below is to display on chart the input at the Parameter: Lots: 0.01 or Lots: 5.50 (etc.)
string paraTXT will not accept defaultLots directly - if I add the below code it produces error - solution sought - thanks
namespace cAlgo
{
    [Robot(TimeZone = TimeZones.UTC, AccessRights = AccessRights.None)]
    public class AKBTR : Robot
    {
        [Parameter("Lots", Group = "Parameters", DefaultValue = 0.01)]
        public double defaultLots { get; set; }
        private double LTS = defaultLots; // LTS and LTS.ToString("N2") not working
        private const string paraTXT = "Lots: " + LTS.ToString("N2") + "  " + "\n\n\n\n  ";
The error against - private double LTS = defaultLots;
Error CS0236: A field initializer cannot reference the non-static field, method, or property 'cAlgo.AKBTR.defaultLots.get'
NO REPLY REQUIRED - SOLUTION AS BELOW
  [Robot(TimeZone = TimeZones.UTC, AccessRights = AccessRights.None)]
    public class AKBTR : Robot
    {
        [Parameter("Lots", Group = "Parameters", DefaultValue = 0.01)]
        public double defaultLots { get; set; }
      
        protected override void OnStart()
        {
            paraTXT();
        }
        private void paraTXT()
        {
            string paraTXTst = "Lots: " + defaultLots.ToString("N2") + "  " + "\n\n\n\n  ";
            Chart.DrawStaticText("", paraTXTst, VerticalAlignment.Bottom, HorizontalAlignment.Left, Chart.ColorSettings.ForegroundColor);
        }
Output at chart: Lots: 8.00
