The new insider page with our custom rating algorithm is now live for your review. We plan to use this rating and data to completely deprecate and replace the current insider factors that come from our vendors. As was discussed here: PREVIEW: Our own insider transaction metrics we think the way the aggregates are calculated by our vendor is not useful at all.
Our rating algorithm is printed below. It is not final and can be tweaked. Naturally it will be a lot easier to tweak once we have the rating loaded in our backtest engine. We will most likely have a three month period for further refinements before it's locked down.
Looking forward to your feedback
Thanks
Bullish and Bearish ratings
Here is a textbook example showcasing our Bullish and Bearish ratings and removing all the noise from transactions rated neutral. Heavy outright, unplanned selling after IPO, and open market buys at the lows several years later, preceding a huge run up.
Our current rating algorithm looks like this. I tried having a nicer GPT generated flowchart but it made a few awful mistakes. Still trying...
IF {any shares bought in the open market }
// Any kind of open market buy makes the transaction special
IF {overall net share is <= 0}
// insider owned shares is flat or decreasing
Rating = 3 (Neutral)
ELSE IF {amount bought < 0.5% of total owned}
// not a significant amount of shares bought
Rating = 2 (Bullish)
ELSE
Rating= 1 (Very Bullish)
ELSE IF {overall shares net > 0}
// insider shares owned is increasing (awards, option conversions, etc)
Rating = 3 (Neutral)
ELSE
// insider is reducing his total number of shares
IF {flagged as “planned”, regular disposal}
IF {conversion, exchange or tax related}
Rating = 3 (Neutral)
ELSE IF {amount disposed < 3% of total owned}
Rating = 4 (Bearish)
ELSE
Rating = 5 (Very Bearish)
ELSE
IF {transaction net = 0}
// entire amount of shares acquired is disposed
Rating = 4 (Bearish)
ELSE
Rating = 3 (Neutral)
// Make more bearish depending on size
IF {amount disposed is > 5% of total owned}
Rating = Rating + 1
Regarding the old ones, which ones will be affected, erased or replaced?
InsNetShrPurch will be affected?
InsBuyTran ?
Insider#Own?
InsNetTrans?
InsSelTrans?
There are a few other inside the label Insider Factors and Insider Functions
Take into consideration that maybe there are users that are using the old ones and checked and testee with them…any thought on that @marco how this will be managed? Sorry if I misunderstood something in the thread
deprecated them and create new ones with different names
Deprecating means they still work but do not show up in the reference. Either way the old ones will have to go away at some point. So choice 2 is simply buying more time.
Safest thing is 2 for now, and it will let you compare them side-by-side. Also we are going to create new functions factors like aggregating in the past 2 weeks, one month, whatever. C-suite transactions also cold be added.
I agree with you Marco…option 2 is more coherent and cautious…and allow compare old with new too of course that is kind of useful as well…not to metion old factors involved in AI ranking systems…
This is certainly a step in the right direction, and I’ll definitely be checking the new insider tab for individual stocks. I can think of alternative rating algorithms - ideally I’d like to be able to devise my own and choose the one that backtests the best.
Here’s the flowchart of the algorithm. I used the mermaid code below which you can edit in mermaid.live . Visualizing the algorithm really helps. It looks like it could be tweaked further.
PS. all my attempts to use an LLM to generate this failed. I resorted to mermaid.live, but would not use it again. It was not easy to write the code to generate this.
flowchart TD
classDef VBU fill:lightgreen,stroke:#333,stroke-width:4px;
classDef BU fill:#E9FCE9,stroke:#333,stroke-width:4px;
classDef NE fill:lightgray,stroke:#333,stroke-width:4px;
classDef BE fill:#FFB8B8,stroke:#333,stroke-width:4px;
classDef VBE fill:#FF5C5C,stroke:#333,stroke-width:4px;
A{Any open<br>market buying}
A -->|Yes| B{Net share > 0}
B -->|YES<br><br>Total shares owned increases| C{"Significant purchase? <br>(>0.5% of total owned)"}
B -->|NO<br><br>Total shares owned decreased| R3a("Rating=3<br>(Neutral)"):::NE
C -->|YES| R1("Rating=1<br>(Very Bullish)"):::VBU
C -->|NO| R2("Rating=2<br>(Bullish)"):::BU
A -->|No| F{Total shares<br>owned increases}
F -->|NO| G{Planned<br>transaction}
G -->|YES| H{conversion, exchange<br>or tax-related}
H -->|YES| R3b("Rating=3<br>(Neutral)"):::NE
H -->|NO| I{"Significant disposal<br>(>3% of total owned)"}
I -->|NO| R3b
I -->|YES| R4c("Rating=4<br>(Bearish)"):::BE
G -->|NO| J{No change in<br>shares owned}
J -->|YES<br><br>Entire amount of shares acquired is disposed| K{"Significant disposal<br>(>5% of total owned)"}
J -->|NO<br><br>Amount owned decreases| L{"Significant disposal<br>(>5% of total owned)"}
K -->|NO| R3("Rating=3<br>(Neutral)"):::NE
K -->|YES| R4c("Rating=4<br>(Bearish)"):::BE
L -->|YES| R5("Rating=5<br>(Very Bearish)"):::VBE
L -->|NO| R4d("Rating=4<br>(Bearish)"):::BE
F -->|YES<br><br>Awards, option conversions, etc| R3a("Rating=3<br>(Neutral)"):::NE
Thanks for sharing the diagram @marco -it was quite helpful. Happy to see you were able to get so much detail in the page. I will keep looking but looks great!
The one question I have is why the significant sale was set to 3% instead of a lower percentage such as say 2%, 1%? or 0.5% like the buys? My initial guess would be that 1% or above should be a significant sale.
Is any open market sale a 5? Assuming yes.
Thanks for giving me an opportunity to contribute and provide feedback.
This looks great, thanks Marco. Maybe I missed it, but how can you access the data to incorporate as rules in screens/ranking systems? Or is this still being developed?
I was pleased to see that the insider page for British American Tobacco now shows the insider deals. I’m not sure I agree with the “Bullish” rating for some of the deals though. For example, on 10th November the CEO Tadeu Marroco acquired 396 shares worth 16,354 GBP under the Deferred Share Bonus Scheme. I think deals whereby shares are acquired under company schemes are more neutral than bullish.
Unfortunately all we get from FactSet is a "P", indicating an open market purchase and it's not flagged as planned. I'll take another look. Where do I see these insider transactions in the EU SEC counterpart?
PS. the ID you see "FDS0000000000000000000000000000020850193" is likely internal FactSet id. I'll be able to verify once I see the original filing
I’m not aware of an EU-wide source. I had a look at live.deutsche-boerse.com/ but didn’t see insider deals there. Maybe /www.boerse.de/insider-trades/ ?
Maybe I am misunderstanding this branching? Shouldn’t a decrease in shares be more bearish than a static count? Wonder if the 4 and 5 are flipped in the diagram
Yes looks great now. I think we could thinker with this middle bit (should it be bearish if no change in position? something to think about and maybe some research to do to test each hypothesis my initial guess would be still kind of bearish because it was not kept but maybe more of a 3.5 if you may), but now the revised chart you included looks pretty good to me and easier to follow