A Python program to suggest Stocks for Value Investing, Call Options trading, and Put Options trading. Recommendors are implemented as classes, and the specific criteria can be modified through parameters passed to the constructor.
- yfinance for stock data, history, and properties
- pandas for dataframe operations
- datatime for date management
- pickle for external file handling
- os and sys to hide unecessary output
- numpy for statistical calculations
Stocks are checked for:
- Market Cap: At least 100B
- Analyst Ratings: At least be an outperform on average
- Yearly change: At least up 25% over the last year
- Country: Chinese stocks are avoided due to unreliability
- Dollar volume: At least 500 million
- Suggested stocks are updated every 30 days
- The parameters can be changed through the constructor
- Final object is memoized in an external file to prevent needless recalculation
Stocks are checked for:
- An underperform analyst rating at most
- Either an increase of at least 40% or a decrease of at least 20%
- A decrease in speculated Price to Earnings ratio by at least 10%
- Suggested stocks are updated every 30 days
- The parameters can be modified through the constructor
- Final object is memoized in an external file to prevent needless recalculation
Examples to test out the code are included at the bottom of each file. Call Option logic hasn't been finalized yet.
Happy Investing!