OptionsBot Index

Directory / ProgramComputer/earnings-trade-automation

A

ProgramComputer/earnings-trade-automation

Automated Python trading bot for earnings calendar spread options with Kelly Criterion, Alpaca API integration, and Google Sheets tracking.

Reviewed Bot 85/100
Not financial advice. A grade measures public repo hygiene only (license, upkeep, tests, paper mode, risk limits, docs). It does not measure returns, safety or suitability. Options trading can lose more than you invest. Read the full policy.
Reviewed. Grok Bot read the code and docs and checked or adjusted each judged factor. Nothing was executed. This is not a human audit. Reviewed on 2026-10-24 against commit f667983, rubric v1.1.

Reviewer summary: Earnings calendar-spread automation for Alpaca with documented exposure caps, quote-age limits and an Alpaca paper default. No kill switch or circuit breaker found.

Facts

Repositoryhttps://github.com/ProgramComputer/earnings-trade-automation
TypeBot
StrategiesEarnings plays, Calendar spreads
BrokersAlpaca
LicenseISC
LanguagePython
Last commit2026-10-23 (1 days before the scan)
Last scanned2026-10-24
Stars24 (shown for context, never scored)

Score breakdown

FactorPointsHow it was decided
Risk limits and kill switch 10 / 20
README documents MAX_AGGREGATE_EXPOSURE_PCT (36 percent of equity) and quote and spread limits, enforced in trade_workflow.py (10). No kill switch or approval gate found. The scanner's single hit was a false positive.
Reviewer confirmed the scanner result.
Scanner evidence (2, automated, can include false matches)
  • trade_workflow.py:49 [max notional or exposure] MAX_AGGREGATE_EXPOSURE_PCT = Decimal(os.environ.get("MAX_AGGREGATE_EXPOSURE_PCT") or "0.36")
  • trade_workflow.py:1499 [position limit] print(f"Position sizing: {sizing_basis}.")
License 15 / 15
ISC (OSI approved)
Reviewer confirmed the scanner result.
Scanner evidence (1, automated, can include false matches)
Last commit on default branch 15 / 15
1 days since last commit
Fact from the commit date, no judgment involved.
Scanner evidence (1, automated, can include false matches)
  • default branch HEAD 2026-10-23 (1 days ago)
Tests 10 / 15
107 test cases found in 3 test files; CI test step not found
Reviewer confirmed the scanner result.
Scanner evidence (3, automated, can include false matches)
Paper or dry-run mode 15 / 15
README documents ALPACA_PAPER=true and a paper API base URL.
Reviewer confirmed the scanner result.
Scanner evidence (3, automated, can include false matches)
  • README.md:54 ALPACA_PAPER=true # 'false' for live trading, with the live APCA_API_BASE_URL and a separate TRADES_DB_PATH
  • alpaca_integration.py:179 [paper-mode flag] setting = os.environ.get("ALPACA_PAPER")
  • trade_workflow.py:340 [paper endpoint] expected_url="[link] if paper_mode else "[link]
README quality 10 / 10
install steps, config or env vars, explains what it does, risk disclaimer, 11697 chars
Reviewer confirmed the scanner result.
Scanner evidence (2, automated, can include false matches)
Broker detection 10 / 10
Alpaca (deps, code, readme)
Reviewer confirmed the scanner result.
Scanner evidence (1, automated, can include false matches)
Total85 / 100Grades: A 85+, B 70+, C 55+, D 40+, F below.

Grades measure public repo hygiene on the scan date. They say nothing about profits, safety or security. We did not run this code. Full rubric and patterns.

Something wrong?

Report a correction Request removal (maintainers)

Corrections and removals are public GitHub issues. We reply within 7 days and every change is in the repo history. Sponsors get no special treatment: see our policy.

Badge for your README

Once the site has a public address, shields.io can read /badge/programcomputer--earnings-trade-automation.json from it. Badges show the grade and whether it was reviewed. Maintainers may use one without asking.