Please consider the
following method of building vs the current Random Build, Genetic Build,
Improver.
Find Entry. Using the
concepts from "Statistically sound machine learning for algorithmic
trading of financial instruments" (Timothy Masters) "Indicators
and Targets" chapter, find the indicators for the relevant timeframe,
where wins are more than losses using a choice of 2 or both methods.
Using a ATR SL/TP
Using the same signal for
reversed signal as exit of original position and entry of new position
"Improve" the Entry
strat using a combination in iterative and/or combined methods
"Improve
Entry" - "Add only" X rules, where X is defaulted to 1, to
improve the Entry of the strat. User can classify in Random groups,
"Trend direction" or "Volatility" or "News
Awareness" filters so that user might choose which category of
random groups to be used to improve this entry only strat. Rules should be allowed to be added on
other timeframes (higher or lower).
"Improve Exit" -
similar to "Improve Entry",
improve strat in
same mechanism,
additional ability to add,
strip or randomize ATM.
Randomizing using
"Or" condition to add rules as well as "and". (Currently, only observing
"and" rules in exits. Might be an observation bias on my part)
"Improve "
Stoploss - In using reversed signal in find Entry, user might not use
Stoploss to check the raw effectiveness of the signal. Hence need to add SL / TP after that.
d. "Improve Take
Profit" - Similar to "Improve Stoploss" e. "Improve Trading
Options" E.g. but not limited to
E.g.
introducing/removing Limit Time Range, including the time range open and
close.
Optimizing on Minimum SL /
TP
f. "Improve Money
Management" options by adding
Equity Curve
Hacking option to support the existing options. It is known by different names and
implementations. One of which
could be if the equity curve is lower than its own SMA 20. Or if returns is <-2 std dev of the
last 20 trades etc.
Other notes
In "Find Entry",
the single indicator rules can be used increase the probability that those
rules should be used in "Building block" for new strat building
process. This method might make
Fuzzy Logic method of building more directed, giving more results in a
shorter time. Or in the other
modes, a higher probability that strat generate has a better chance of
success, increasing accepted strat per strat generated metric.
"Add only" as
opposed to "Add or Replace" in Improver can help to reduce the
search space for more efficient algorithm search.
QA might have
"What-if" scenarios, like not taking trades at the 23rd hour,
however, that is a 2 stage process, meaning user needs to load it up and
do a What-If in QA. Whilst its good
to maintain this functionality in QA, it would also be more efficient if
SQ can generate the "What-If" within the builder as well. The QA option of What-if
"hours" is might not address the finer grain control if user
wants to only avoid trades after 2320 hrs as opposed to 2300hrs.
e. "Improve Trading Options" E.g. but not limited to
Other notes