This project implements an automated workflow that monitors same-day U.S. IPOs and sends an email notification when IPOs meet a defined offer-size threshold.
The automation runs daily at 9:00 AM Dubai time (UTC+4).
- Monitor U.S. stock market IPOs
- Consider only today’s IPOs (not future listings)
- Calculate offer amount:
IPO Price × Number of Shares
- Filter IPOs with offer size > USD 200 million
- Send automated email notification with qualifying ticker symbols
- Python 3.10+
- Finnhub IPO Calendar API
- GitHub Actions (cron-based scheduler)
- Gmail SMTP (SSL with App Password)
- requests
- pytz
- python-dotenv
automation-workflow/ │ ├── ipo_monitor.py ├── requirements.txt ├── .gitignore └── .github/ └── workflows/ └── ipo.yml
Stored securely using environment variables.
FINNHUB_API_KEY=xxxxxxxxxxxx
SMTP_EMAIL=yourgmail@gmail.com SMTP_PASSWORD=gmail_app_password TO_EMAIL=yourgmail@gmail.com
- Runs daily at 9:00 AM Dubai time
- Cron expression:
0 5 * * *
Subject Daily U.S. IPO Monitor – Same-Day IPOs Above $200M
Email includes:
- Execution date
- Filter criteria
- Qualified IPO ticker symbols
- Calculated offer amounts
If no IPO qualifies, a confirmation email is still sent.
- Reliable U.S. IPO calendar data
- Provides IPO price and share count
- Clean and stable REST API
- Covers NASDAQ and NYSE listings
- GitHub Actions execution logs
- Manual workflow trigger
- Email delivery confirmation
- Screen recording for review
This automation demonstrates:
- Timezone-aware scheduling
- Market-data integration
- Deterministic filtering logic
- Secure credential handling
- Fully automated daily workflow
Author:
Muhammed Afsal P M