First post here! Before I get to my questions, I just wanted to say I'm a huge fan of Portfolio123, the AI Factor tools, and this community. The amount I've learned over the past few years has been incredible. A big shoutout to Andreas, @judgetrade for helping me through the learning curve.
I'm trying to better understand what the numerical output value returned by AIFactor() actually represents.
For example:
AIFactor(...) will return values like:
0.198
0.214
0.256
A quick way to see this is in a Screen by increasing the threshold (e.g. AIFactor(...) > 0.20, then > 0.21, etc.) the higher the value, the less the totals.
I have a few questions:
-
Is the value returned by
AIFactor()the model's raw prediction, or is it some kind of probability-like or normalized score? -
Is the AI Factor output calibrated, or are the absolute values arbitrary and only intended to be ranked?
-
Is there any advantage to using an absolute threshold (e.g.
AIFactor(...) > 0.20) instead ofRank > X? -
Does a higher AI Factor output value indicate greater confidence in the prediction, or simply a stronger prediction?
The reason I'm asking is that I've noticed different AI models produce different output value ranges, and from what I’m seeing, models with higher validation results produce higher AI Factor predictor output values.
Eg: a validation Avg% High of say 95% will top out at 0.26, whereas a validation model with an Avg% High of 75% will top out at 0.18.
I've also experimented with using AIFactor(...) > X in buy rules and < X in sell rules. (They take ages to run a sim)
Within a single AI Factor model, the output seems to behave much like a rank gate. However, seeing how the output ranges differ across models, and appear to increase with stronger validation results, this has me wondering whether those values are actually comparable across models.
If the AI Factor score is calibrated, it seems like there could be some interesting applications. For example, could a multi-AIFactor strategy combine different targets, say 2M, 3M, and 4M Total Return AI Factors, and only select stocks where all models exceed a score threshold such as 0.20?
Or combine a linear model and a tree-based model trained on the same target, and require both to exceed a given output threshold. Other ensemble approaches too, weight formulas, etc.
This post could save me hours of experimenting, as the output could just be another expression of rank for all I know, and using AI Factor in buy/sell rules takes the simulations 5-10 minutes to load, vs seconds with rank.
Thanks in advance. Looking forward to learning more.