A desktop application to automatically find arbitrage betting opportunities across different sportsbooks.
Arbitrage betting (also known as "arbing" or "sure betting") is a strategy where you place bets on all possible outcomes of an event at odds that guarantee a profit regardless of the result. This happens when bookmakers disagree on the odds of an event, creating an opportunity for guaranteed returns.
- Automatic Arbitrage Detection: Scan multiple sports and bookmakers to find profitable arbitrage opportunities
- Sports Filtering: Select specific sports to narrow your search
- Profit Margin Calculation: Set a minimum profit threshold for opportunities
- Bankroll Management: Calculate optimal stake distribution across different outcomes
- Detailed Results: View opportunities in both table and text formats
- Data Export: Export results to CSV or JSON formats for further analysis
-
Download the repository
-
Run Arbitrage FInder.exe
-
Input in your API Key from the Odds API https://the-odds-api.com/account/
- You need to sign up to get a free key
- For acccess to more data you may need to pay for a subscription
-
Clone this repository:
git clone https://github.com/yourusername/sports-arbitrage-finder.git cd sports-arbitrage-finder -
Install the required dependencies:
pip install -r requirements.txt -
Run the main file:
python main.py -
Continue from step 2 in option 1 (the exe will be in a dist folder)
- API Key: Enter your API key from The Odds API
- Load Sports: Click "Load Sports" to retrieve available sports
- Filter Sports: Select the sports you want to include in your search
- Region Selection: Choose your betting region (us, eu, uk, au)
- Profit Margin: Set the minimum profit percentage you're looking for
- Bankroll: Enter your bankroll amount to calculate bet allocations
- Find Opportunities: Click to scan for arbitrage opportunities
- Results: View results in the table or text tab
- Export: Save your findings as CSV or JSON for record keeping
- Act Quickly: Arbitrage opportunities can disappear within minutes
- Consider Bookmaker Limits: Some bookmakers limit accounts that consistently win
- Watch for Terms & Conditions: Be aware of specific bookmaker rules
- Mind the Fees: Transaction fees can eat into profits
- Start Small: Begin with a modest bankroll until you're comfortable with the process
The application uses The Odds API which has usage limits:
- Free tier: 500 requests per month
- Paid tiers available for more frequent usage
The app is designed to be efficient with API calls by:
- Only fetching data for selected sports
- Using multi-threading to process data faster
- Allowing you to export findings to analyze offline
- No Sports Loading: Verify your API key and internet connection
- No Opportunities Found: Try expanding your sport selection or lowering your profit margin
- Application Errors: Check the console output for error messages
sports-arbitrage-finder/
├── main.py # Application entry point
├── requirements.txt # Python dependencies
├── src/
│ ├── gui.py # PyQt5 GUI implementation
│ ├── logic.py # Arbitrage detection logic
│ └── utils.py # Helper functions
├── tests/ # Unit tests
└── docs/ # Documentation