Insider and Institutional ownership
Author: Ayjahsun1
Creation Date: 9/20/2018 12:27 AM
profile picture

Ayjahsun1

#1
Can you please create an indicator and or extension (fundamental item) for total insider and or Institutional ownership by percentages? Or is there already a way to get there and I just don't know how?
profile picture

Eugene

#2
Let's understand what we're dealing with, where to get the data, how to use it etc.

1. How do you imagine this? In other words, in what form would this be usable in your Wealth-Lab backtest and/or trading?

2. Can you name preferred data sources for "total insider ownership" and/or "institutional ownership by percentages" (websites, data feed(s))?
profile picture

Ayjahsun1

#3
QUOTE:
1. How do you imagine this? In other words, in what form would this be usable in your Wealth-Lab backtest and/or trading?

I would imagine the ability to query tickers where institutional and or insider ownership >= or =< to a specific % value similar to the last insider buy/sell transaction in the calendar fundamental conditions.

QUOTE:
2. Can you name preferred data sources for "total insider ownership" and/or "institutional ownership by percentages" (websites, data feed(s))?

I would imagine this data would be found in the fidelity fundamental dataset it is currently available on the Fidelity website.
profile picture

Eugene

#4
QUOTE:
I would imagine this data would be found in the fidelity fundamental dataset it is currently available on the Fidelity website.

Here's how things work. Our third party company MS123 LLC (which runs the wealth-lab.com website) is not involved in preparing the Fidelity data providers. What we could do, if feasible, is create a data provider for a 3rd party fundamental data source.

QUOTE:
I would imagine the ability to query tickers where institutional and or insider ownership >= or =< to a specific % value similar to the last insider buy/sell transaction in the calendar fundamental conditions.

I see. If you have a candidate data source that has historical time series for institutional / insider ownership available for free, please point me to it. As far as I know, websites like Fidelity's display only a delayed snapshot of the latest data e.g. https://eresearch.fidelity.com/eresearch/evaluate/fundamentals/ownership.jhtml?symbols=AAPL. This won't be usable in backtesting according to your criteria.
profile picture

Sherwoodherben

#5
Hi Eugene,

I have a need for the latest data for a stock's percentage of institutional and mutual fund ownership as part of my strategy development. The example you provided earlier in this thread would be sufficient for my needs if I had WL access to the ownership percentages.

https://eresearch.fidelity.com/eresearch/evaluate/fundamentals/ownership.jhtml?symbols=AAPL


How can I access this information in WL?

Thanks,
--Sherwood
profile picture

Eugene

#6
Sherwood, below is quick & dirty parser for ownership data by Fidelity.

Prerequisites:

1. HtmlAgilityPack.dll installed (part of Community Components and many data provider extensions)
2. Check System.Xml in strategy's "References..." dialog

CODE:
Please log in to see this code.
profile picture

Sherwoodherben

#7
Hi Eugene,

Thanks!

When run as a standalone strategy, the code you provided pops up a debug dialog with the relevant symbol and data name along with the important "key/value" pairs (separated by tab).

Here is the output:

CODE:
Please log in to see this code.


My hope is to add this "Ownership" data as a selection criteria of a combination strategy that includes other rules and code based strategies.

QUESTIONS: ( BTW, I have some, but limited, programming skills)

1) Is it reasonable (e.g.: feasible and best practice) to create a new dataset or fundamentals with this ownership information for all 6000+ US stocks that I can update daily and use trivially in a strategy rather than query on-demand?

. a) If so, can you provide documentation and/or examples how I can create and maintain that?

2) Can you suggest code adjustments to your script or point me to documentation to achieve something similar to the following:

. a) Make the four "keys" above "testable" parameters with slide-bar adjustable values and return those symbols (e.g.: pass along to the next parameter) that result in "true".

. b) Allow testable parameter "values" to be a variable percentage between 0 and 100 and allow the following prepended symbols: ">, <, <>, =, <=, <=", as well as "+" and "-" plus the follow postpended symbols: "|" and "&" with the implied default being "=0|".

. c) Create a new combined "Total Ownership" parameter that sums all four existing parameter values into one with the same value test requirements above.

. d) Any symbols marked as "true" for all five parameter value tests above (four plus one new) are passed on to the next combination strategy.


Regards,
--Sherwood

PS: I hope to develop and trade my strategies with Fidelity directly through WL.


profile picture

Eugene

#8
QUOTE:
d) Any symbols marked as "true" for all five parameter value tests above (four plus one new) are passed on to the next combination strategy.

Passing on a parameter to a different Rule-based child Strategy in a Combination Strategy? Not in Wealth-Lab we know. This is not something that can be done easily with Combination Strategy even if all of its constituents are purely code-based. Each child Strategy would have to be modified to save/restore a value from WL's global memory.

QUOTE:
1) Is it reasonable (e.g.: feasible and best practice) to create a new dataset or fundamentals with this ownership information for all 6000+ US stocks that I can update daily and use trivially in a strategy rather than query on-demand?

Sounds reasonable. You could try but I wouldn't bet the farm on that you'll be allowed to successfully finish data collection every day from now on. I mean, what if some protection against web crawlers or server load kicks in after N requests?

Just fyi, a professional grade database like Zacks Holder Metrics (not supported by our Quandl provider) costs $1,200 p.a.

QUOTE:
a) Make the four "keys" above "testable" parameters with slide-bar adjustable values and return those symbols (e.g.: pass along to the next parameter) that result in "true".

There's some work to do before the code example from post #6 becomes usable in a Strategy (on the last bar only). Please let me know if you think it's still worth the effort, knowing that you cannot achieve your objective of chain-linking Combo strategies.
profile picture

Ayjahsun1

#9
Hi Eugene I would think it will still be worth the effort.
profile picture

Sherwoodherben

#10
Hi Eugene,

Thanks for highlighting the risks of creating an "unsupported" Fidelity dataset/fundamentals and I'll drop that thought for now.

I'll also read up more on the value and use of combination strategies but will also drop that thought for this use case.

Since many of the strategy conditional filters I'll be using are readily available using the object oriented strategy rules engine, I was hoping to avoid converting rules to code based simply to add a conditional statement like ownership.

Before I make the emotional commitment to convert all future strategies to code based... Do you have any suggestions how I could preserve the rules format while incorporating a conditional parameter for ownership?

Regards,
--Sherwood
profile picture

Eugene

#11
@Sherwoodherben

Re: rules and conditional filters. This topic deals with "Insider and Institutional ownership" exclusively. To keep the forum searchable and well maintained you're welcome to ask your unrelated question in a new forum thread.
profile picture

Eugene

#12
@Ayjahsun1, @Sherwoodherben

Guys, I notice your interest to this topic so I decide to build this class. Give it a go.

@Sherwoodherben, I leave the excercises in testing (testable parameters, combined "Total Ownership" parameter) up to you. Check out the WealthScript Programming Guide, it's documented in Programming Trading Strategies > Strategy Parameters.

CODE:
Please log in to see this code.


Hope this helps.
profile picture

Sherwoodherben

#13
Hi Eugene,

Thanks for your coding work.

For my efficiency sake, can you please answer this question:

Can you suggest a way to implement a conditional filter of "ownership" without converting a strategy to "code based"?


Regards,
--Sherwood
profile picture

Eugene

#14
QUOTE:
Can you suggest a way to implement a conditional filter of "ownership" without converting a strategy to "code based"?

Sorry, no way to make this stuff compatible with rule-based strategies. It's neither indicator nor fundamental item.

Here's version that caches the data to avoid excessive web requests:

CODE:
Please log in to see this code.
profile picture

Scottartmann

#15
Hi,

New to Wealth Lab and resurrecting this thread, specifically around leveraging insider/institutional ownership as a "setup" for a technical trading signal. Based on my initial review of the combination strategies, I thought that was the purpose for combo strategies (If ownership in a particular ticker is X, then scan for entries).

Am I missing something here, based on Eugene's comment?

"Sorry, no way to make this stuff compatible with rule-based strategies. It's neither indicator nor fundamental item."

Could Insider data be added as a fundamental item (tied to ticker) and pulled into Wealth Lab? I can see a number of ways to aggregate this from the raw EDGAR filings (intrinio has an API, which may not be usable with WealthLab unless it allows external API calls)

Ideally, would like to leverage this in a trading system that integrates with my Fidelity account. I would be willing to pay for a third party data provider (Like Zack's) of that would enable this.

Thanks!
profile picture

Eugene

#16
Welcome to the forum Scott.

In Wealth-Lab, Combination Strategies are designed for multi-system backtesting i.e. a portfolio of child systems each applied to its own DataSet, position sizing, allocation, and time frame. Not seeing any connection to insider/institutional ownership here.

The code in my posts above returns a snapshot of current ownership summary in a symbol. Since the data source given to me does not have any history it has very limited use (no backtesting).

Provided there's an API and good incentives, anything could be programmed (in theory).
profile picture

Scottartmann

#17
Perfect, Thanks Eugene! Will play with the code you posted and see if I get in over my head :-).

Scott
This website uses cookies to improve your experience. We'll assume you're ok with that, but you can opt-out if you wish (Read more).