Pushing Community Power EA to the next level (Expressions Engine)

Avatar
  • updated
  • Suspended

How can we do it? Through an Expressions Engine!

A built-in Expression Engine will do two things:

  • Give nearly endless possibilities to creative Traders
  • Reduce the development workload for Andrey (afterwards)

Other possible effects

  • Split EA users into groups

A brief description:

We write mathematical and calculation logic.

Example: If you have two MA indicators and you want to ask the expert when the first one is greater than the second one, then something should be done, you write in the expression field "MA1>MA2".

There are two kinds of expressions in mathematics: Logical and Numerical. Logical expressions are those that have a true or false result and can be a combination of complex logical expressions. For example, if "X>12 AND Y-3<8".

Numerical expressions are those that return a number as the result. This is an example of numerical expression:

(X-2)e3 * (log(2)-6) + Sin(2π) that could be written like this:

(X-2)*MathExp[3] * (MathLog[2] - 6) + MathSin[2*pi]

The engine needs to support three kinds of expressions: Logical, Functional and Conditional/If Expressions.

Image the possibilities (these are only a few):

  • Find any candlestick pattern (or anything else you want)
  • Use any (open) indicator
  • Any Signal, any Filter
  • Any Risk and Money Management
  • Trail anything by any value
  • Close by anything
  • Tick trading

Even total crazy thing become possible and anybody with only little code experience can test his idea by using the expression engine together with the options already given by Community Power EA. Beginners can ask experienced users how to realize a strategy. This can organize us all into groups: Beginners, EA users, engine Users, admin group and Andrey (as his own group, with a godlike status worshiped by us all).

;-)

Avatar
0
Joschi

unfortunately i don't understand that much of the technical side because i definitely fall into the beginner category, but i think the idea of different groups with different approaches is very good! this would further relieve the main telegram group and someone like me would find it easier to implement his ideas, because i definitely have a few strategies that i would like to try out! but unfortunately with all the settings and optimization possibilities I have no idea how to do it ^^

Avatar
0
Andrey Khatimlianskyi
  • Suspended

Jan, thanks for your suggestion!

You're absolutely right, expressions are a very powerful tool.

But all this power should be programmed into the EA before you can write an expression and use it. You can't just say "find the divergence of 2 my custom indicators" and wait for the result ;) Any word in this sentence must be programmed into the EA first.

Moreover, expressions will not allow you to make any strategy you want. They are powerful, but not limitless.

Try to find some free EA with built in expressions parser (I saw it on mql5.com) and test it. Share your impressions.

I don't think it is good time to add expressions to the CP.
Avatar
1
Jan Corsair

I knew you would say this ;) cause it is very much work to do. I tried the EAs on the market and have joined (and left) the group around Hyper Trader. Hyper Trader has this feature in a light version but there are many other problems with the EA.

I will play around with ESB next week and can write a summary in this thread if you let it open.

Avatar
0
Andrey Khatimlianskyi
Quote from Jan Corsair

I knew you would say this ;) cause it is very much work to do. I tried the EAs on the market and have joined (and left) the group around Hyper Trader. Hyper Trader has this feature in a light version but there are many other problems with the EA.

I will play around with ESB next week and can write a summary in this thread if you let it open.

Of course, it will be opened for your and other's comments.

Thanks for your ideas!

Avatar
1
Jan Corsair

Hmmm... after playing around with ESB for a while I found a big disadvantage: There is no possibility to do optimization of some settings (because they are part of an expression). On the one hand you get a very high amount of freedom in strategy design - on the other hand you have to know exactly which values to use. Conclusion: Andrey's approach is better for now and may be for a long time.

Avatar
1
Hannes Waser

Hmm, just thinking. There are tools out there, which do the "search" for a strategy and you can export it as an expression.

https://strategyquant.com/

* https://www.buildalpha.com/

I know from buildalpha for example, that 20x=profit/max_dd (in a year) is achievable.

But tbh, I think writing a python script, which converts the expression to a mql code is easier and less cluttered...


Avatar
1
Jan Corsair
Quote from Hannes Waser

Hmm, just thinking. There are tools out there, which do the "search" for a strategy and you can export it as an expression.

https://strategyquant.com/

* https://www.buildalpha.com/

I know from buildalpha for example, that 20x=profit/max_dd (in a year) is achievable.

But tbh, I think writing a python script, which converts the expression to a mql code is easier and less cluttered...


I have tested strategyquant about a year ago and I was not really happy with it. They could not keep their promises and the price of their software suite was rather high - but they have this nice free tool algowizard.io (which was buggy too - but at least free). Buildalpha is using the same approach but they aren't offering a free demo. It's the cat in the sack.