selective initiation of variables

 

i've been scratching my head with this for a while, maybe someone can help/indicate where to get a reference for my problem


the objective:

  • have a variable to select which part is used for work(eg indicators)
  • selectively select the variables to present to user for data


i have tried a lot of ideas, but none seems to work. the variables are not shown or all appear

i know it doesn't work, but here is where i am at the moment

enum myt
  {
   m1,
   m2
  };
  
bool teste(myt v);

input myt      vart= m1;
bool           varb=teste(vart);

#ifdef tipo1
input group "group 1"
input int a=0;          //first group variables
#endif 

#ifdef tipo2            
input group "group 2"
input int b=5;          // second group
#endif 

bool teste(myt v)
{
switch(v)
  {
   case m1 :
      #define  tipo1
      #undef   tipo2     
      break;
   case m2 :
      #define  tipo2
      #undef   tipo1     
     break;
  }
  return(true);
}
any help will be welcome, either code or references
 

scur:

  • have a variable to select which part is used for work(eg indicators)
  • selectively select the variables to present to user for data
  • Inputs are fixed. You must show them all. Drop your #defines.

     

    You can't turn on/off input variable display in runtime.

    Preprocessor directives are executed before compiler and they include/exclude parts of code that will go into final compiled version. 

    You can either create one indicator with all input variables separated into logical sections or create several indicators, each with particular set of input variables.

     

    that is my normal approach to the initialization,to throw them all in separated by input groups

    but that approach creates a long list of variables that are not used by the user of said application

    what i was wondering is how could be done more clearly

    my ideas are mostly to add tabs to the launcher of the EA, or have a way to make it clearer what is needed to set values

     
    scur:

    that is my normal approach to the initialization,to throw them all in separated by input groups

    but that approach creates a long list of variables that are not used by the user of said application

    what i was wondering is how could be done more clearly

    my ideas are mostly to add tabs to the launcher of the EA, or have a way to make it clearer what is needed to set values

    Create a custom launcher 

    (best option for the wiggle room you need)
     

    any reading you can recommend for it?

    or indicate some code that uses it?

    that truly seems an interesting idea

     
    scur:

    any reading you can recommend for it?

    or indicate some code for it?

    that truly seems an interesting idea

    I mean your ea will still start via the default input screen , but your configs will be within the tool when its running .
    I am not aware of any materials -i brute forced my way into it- .
    You can start small though.

    What is the first identifiable step in your project 

     

    right now it's like a study i was making to see how some modicum of user friendliness could be achieved

    my start idea is to present either indicator A or B

    once i get the hang of it i can expand it to be easier for my other projects


    got a simple EA in the mt5 expert in the codebase, custom trail-stop by MA, and was thinking to expand on it to use different indicators

     
    scur:

    right now it's like a study i was making to see how some modicum of user friendliness could be achieved

    my start idea is to present either indicator A or B

    once i get the hang of it i can expand it to be easier for my other projects


    got a simple EA in the mt5 expert in the codebase, custom trail-stop by MA, and was thinking to expand on it to use different indicators

    Great . I agree .

    Its easier than it looks .

    You basically need a module that displays your inputs .

    Each input has a different interaction with the user

    Possible base level types : 

    • input (user types values)
    • select/toggle/drop down
    • datetime
    • color
    • comment (user cant change it)

    you can treat your input screen then as a table and each input being a row on that table

    for starters stay away from datetime ,color , drop downs (instead of a drop down you can have previous/next arrows for the values selection)


     

    i have found some info in the site, but they all start by the class they are implementing

    i know eventually it will have that form, but it's hard to experiment with

    for what i understood so far, i need to create a panel and don't use input variables, setting those inside the panel

    it was a bit hard to find in the help, already i am making some experiences with it

     
    scur:

    i have found some info in the site, but they all start by the class they are implementing

    i know eventually it will have that form, but it's hard to experiment with

    for what i understood so far, i need to create a panel and don't use input variables, setting those inside the panel

    it was a bit hard to find in the help, already i am making some experiences with it

    ow yeah ,theres a Dialogs library which is very helpful and an article for it by mr Karputov ,let me find it real quick.

    Are you building on MT4 or MT5 ?

    Reason: