Je API keys veilig opslaan met environment variables (.env)

Portret van Alex de Vries, Quantitatief Analist & Algo-Trading Expert
Alex de Vries
Quantitatief Analist & Algo-Trading Expert
Brokers & API Integraties · 2026-02-15 · 5 min leestijd
Stel je voor: je hebt een prachtige trading bot geschreven in Python. Hij draait soepel, backtests zien er veelbelovend uit en je bent klaar om live te gaan. Je moet alleen nog je API keys van Binance, Kraken of Interactive Brokers toevoegen. Je typt ze rechtstreeks in je script. Een simpele copy-paste. Maar als je per ongeluk je code deelt op GitHub, staan je keys opeens openbaar op het internet. Binnen minuten is je account leeggetrokken. Dit scenario is helaas realiteit voor veel beginnende quants. Het goede nieuws? Het is super makkelijk te voorkomen.

Wat zijn environment variables (.env) eigenlijk?

Een .env bestand is simpelweg een tekstbestandje in de map van je project. Het bevat variabelen die je buiten je code bewaart.

Je kunt het zien als een kluisje naast je Python-script. Je script opent het kluisje, haalt de keys eruit, en gebruikt ze zonder dat ze ooit in het script zelf staan.

API_KEY=je_geheime_sleutel
API_SECRET=je_geheime_secret

Zo blijft je code schoon en veilig. De syntax is extreem simpel. Je opent een bestand met de naam .env en typt:

Elke regel is een variable. Geen spaties voor het = teken, geen aanhalingstekens tenzij je speciale karakters gebruikt. Klaar. Je script laadt deze waarden in en gebruikt ze om verbinding te maken met je broker. Je hoeft nooit meer je keys in je Python code te plakken.

Waarom dit essentieel is voor algoritmische trading

Als je serieus bent met algorithmic trading, werk je met echte API keys. Die keys geven toegang tot je account.

Ze laten je orders plaatsen, posities uitlezen en transacties uitvoeren. Als ze lekken, is het game over. Je kunt je bot niet meer vertrouwen en je risicomanagement is direct in het geding.

Veel traders gebruiken GitHub of GitLab om hun Python bots te delen met collega’s of voor backup.

Als je keys hardcoded staan, deel je ze onbedoeld met de wereld. Een .env bestand voorkomt dit. Je voegt het bestand toe aan je .gitignore, zodat het nooit wordt meegeüpload. Zo blijft je geheime informatie lokaal op je eigen machine.

Bij backtesting en live trading wil je ook snel kunnen wisselen tussen omgevingen. Misschien test je op een demo account van Interactive Brokers en trade je live op Kraken.

Met .env bestanden switch je in één seconde van API key set. Geen gedoe met commentaar zetten in je code. Dit bespaart tijd en vermindert fouten.

Denk ook aan risicomanagement. Een verkeerde key kan leiden tot onbedoelde trades.

Met een .env bestand beheer je dit centraal. Je kunt makkelijk een apart .env bestand maken voor je testomgeving en een voor je productieomgeving. Zo hou je zaken gescheiden en veilig.

Hoe je .env gebruikt in je Python trading bot

Om .env te gebruiken in Python installeer je een kleine library genaamd python-dotenv.

pip install python-dotenv

Open je terminal en typ: Dit pakket is gratis en weegt bijna niets. Het is een standaard tool voor veel Python developers.

from dotenv import load_dotenv
import os

load_dotenv()

Na installatie laad je de variabelen in je script. In je Python code voeg je dit toe bovenaan je bestand:

api_key = os.getenv('API_KEY')
api_secret = os.getenv('API_SECRET')

Nu zijn je .env variabelen beschikbaar via de os module. Je kunt ze ophalen zo:

import ccxt

exchange = ccxt.binance({
    'apiKey': api_key,
    'secret': api_secret,
})

Gebruik deze variables vervolgens in je broker API call. Bijvoorbeeld met de CCXT library voor Binance, of door verbinding te maken met de Interactive Brokers API. Zo blijft je code leesbaar en veilig. Je kunt ook meerdere .env bestanden beheren.

Maak bijvoorbeeld een .env.production en een .env.test. Laad het juiste bestand afhankelijk van je omgeving. Dit is handig als je een backtesting script draait op een aparte server of cloud instance.

Verschillende manieren om .env te beheren

Er zijn een paar populaire methoden. De eerste is de klassieke .env file.

Je maakt het bestand handmatig aan in je project map. Dit werkt prima voor individuele traders. Je kunt ook een template maken, bijvoorbeeld .env.example, met lege waarden.

Zo vergeet je niet welke variables nodig zijn. Een tweede optie is het gebruik van een password manager of geheime opslag.

Tools zoals 1Password of LastPass hebben functies voor developers. Je kunt je API keys daar bewaren en ze injecteren via environment variables bij het opstarten van je script. Dit kost vaak €3 tot €5 per maand, maar voegt een extra beveiligingslaag toe.

Een derde optie is cloud-based secret management. Als je bots draaien op AWS, Google Cloud of Azure, kun je secrets opslaan in services zoals AWS Secrets Manager of Azure Key Vault.

Deze kosten ongeveer €0,40 per secret per maand. Voor een individuele trader is dit vaak te veel, maar voor professionele setups met meerdere bots is het ideaal.

Voor de meeste Python traders is een simpel .env bestand voldoende. Het is gratis, snel en werkt op elke machine. Combineer het met een broker met uitstekende Python documentatie en een goede .gitignore, en je bent al veiliger dan 90% van de beginnende quants.

Praktische tips voor veilig gebruik

1. Voeg .env altijd toe aan je .gitignore bestand.

Typ simpelweg .env op een nieuwe regel en sla op. Zo voorkom je dat je per ongeluk je API keys lekt via GitHub.

2. Gebruik verschillende keys voor testen en live trading. Bij brokers zoals Binance en Kraken kun je meerdere API keys aanmaken.

Beperk de rechten van je test keys tot alleen lezen. Voor live keys geef je alleen trade-permissies. 3. Vernieuw je API keys regelmatig.

Bijvoorbeeld elke 3 maanden. Als je een vermoeden hebt van een lek, wissel ze direct.

De meeste brokers laten je keys eenvoudig resetten via hun dashboard. 4.

Werk met environment variables op je server. Als je een VPS gebruikt voor je trading bot, stel de variables dan in via het besturingssysteem. Op Linux gebruik je export, op Windows via de systeemeigenschappen.

Zo hoef je geen .env bestand op de server te bewaren. 5.

Test je setup met een mock. Gebruik libraries zoals vcrpy om API calls te simuleren zonder echte keys. Dit is handig voor backtesting en ontwikkeling.

Zo voorkom je dat je per ongeluk live trades plaatst tijdens het testen. Met deze stappen zit je veilig.

Je API keys zijn beschermd, je code blijft overzichtelijk en je trading bot draait met vertrouwen.

Nu kun je je focussen op wat echt telt: je strategie verbeteren en winstgevend traden.

Portret van Alex de Vries, Quantitatief Analist & Algo-Trading Expert
Over Alex de Vries

Alex is een ervaren quantitatief analist en Python-ontwikkelaar die complexe trading concepten vertaalt naar begrijpelijke, praktische handleidingen voor zowel beginners als gevorderden.

Volgende stap
Bekijk alle artikelen over Brokers & API Integraties
Ga naar overzicht →