Persistentiesysteem
Positieherstel
De handelsengine bevat een ingebouwde persistentielaag die is ontworpen om crashes, herstarts en onverwachte afsluitingen te overleven zonder de kritieke handelstoestand te verliezen.
Alle actieve handelsgegevens worden automatisch op schijf opgeslagen met behulp van de aangepaste PersistentMap-component.
Het systeem slaat persistent op:
- •Actieve posities
- •Openstaande orders
- •Symbool-handelscontroles
- •Staten van risicobeheer
Wanneer de bot opnieuw opstart:
- 1.Persistente bestanden worden automatisch geladen.
- 2.De vorige handelstoestand wordt terug in het geheugen hersteld.
- 3.Actieve posities blijven onmiddellijk gemonitord worden.
- 4.Openstaande orders blijven de uitvoeringsstatus van de exchange volgen.
- 5.Risicocontroles blijven behouden.
Hierdoor kan de bot zonder handmatige tussenkomst blijven werken na onderbrekingen.
Doel:
- •Voorkomt dat open posities uit het oog worden verloren
- •Behoudt handelscontinuïteit
- •Handhaaft een nauwkeurige risicobeheerstatus
- •Voorkomt dubbele entries na een herstart

Databasestructuur
De persistentielaag gebruikt lichtgewicht lokale bestandsopslag gebaseerd op Python pickle-serialisatie.
Elke persistente structuur wordt opgeslagen in een onafhankelijk bestand:
- •
active_positions.pkl - •
pending_orders.pkl - •
symbol_controls.pkl
De architectuur is bewust minimalistisch en geoptimaliseerd voor handelssystemen met lage latentie.
Actieve Posities
Slaat momenteel openstaande transacties op.
Elke positie bevat:
- •Handelssymbool
- •Positie zijde
- •Hoeveelheid
- •Instapprijs
- •Stop loss prijs
- •Take profit prijs
- •Trailing stop status
- •Tijdstempel
Doel:
- •Hervat positiebeheer na herstart
- •Zet stop loss en trailing logica voort
- •Behoudt exacte entry-status
Openstaande Orders
Slaat exchange-orders op die wachten op uitvoeringsbevestiging.
Elke order bevat:
- •Symbool
- •Orderzijde
- •Ordertype
- •Hoeveelheid
- •Exchange-order-ID
- •Huidige status
Doel:
- •Voorkomt dubbele orders
- •Blijft de uitvoeringsstatus van de exchange volgen
- •Herstelt onvoltooide orderstromen
Symbool Controles
Slaat runtime-handelsrechten en beschermingstoestanden op.
Elk symbool kan bevatten:
- •Inschakelstatus voor kopen
- •Inschakelstatus voor verkopen
- •Redenen voor uitschakeling
- •Risicovergrendelingstoestanden
Doel:
- •Behoudt geautomatiseerde risicobeperkingen
- •Voorkomt accidentele heractivering na herstart
Crashherstel Logica
Het persistentiesysteem is ontworpen voor automatisch herstel tijdens:
- •Procescrashes
- •Serverherstart
- •VPS-storingen
- •Stroomuitval
- •Onverwachte uitzonderingen
Asynchrone Persistentie
Alle schrijfbewerkingen worden verwerkt in een speciale achtergrondthread.
Kenmerken:
- •Niet-blokkerende handelsuitvoering
- •Continu automatisch opslaan
- •Op wachtrij gebaseerde planning van opslag
Doel:
- •Voorkomt handelsvertragingen veroorzaakt door schijfoperaties.
Atomic Bestandsopslag
Het systeem gebruikt atomaire bestandsvervanging voor maximale gegevensveiligheid.
Opslagprocedure:
- 1.Gegevens worden weggeschreven naar een tijdelijk .tmp-bestand.
- 2.Het tijdelijke bestand is volledig voltooid.
- 3.Het bestand wordt atomair hernoemd naar het uiteindelijke persistentiebestand.
Doel:
- •Voorkomt corrupte persistentiebestanden tijdens crashes of onderbroken schrijfbewerkingen.
Opslag Deduplicatie
De persistentiewachtrij verwijdert automatisch verouderde opslagverzoeken.
Gedrag:
- •Alleen de nieuwste toestand wordt gepersisteerd.
- •Overbodige schrijfbewerkingen worden overgeslagen.
Doel:
- •Vermindert schijfgebruik
- •Verbetert de prestaties bij hoge updatefrequentie
Automatisch Herladen van de Status
Tijdens het opstarten:
- 1.Persistentiebestanden worden gedetecteerd.
- 2.Geserialiseerde objecten worden terug in het geheugen geladen.
- 3.De handelsengine hervat onmiddellijk met monitoren.
Als persistentiebestanden niet bestaan:
- •Een nieuwe, schone opslag wordt automatisch geïnitialiseerd.
Threadveiligheid
De persistentie-engine gebruikt interne synchronisatievergrendelingen tijdens opslagbewerkingen.
Kenmerken:
- •Concurrentie-veilige schrijfbewerkingen
- •Veilige multi-threaded toegang
- •Beschermde bestandsvervanging
Doel:
- •Zorgt voor consistentie tussen handelsthreads en de persistentielaag
Bescherming bij Correct Afsluiten
Voor het afsluiten:
- 1.Een definitieve opslagbewerking wordt geforceerd.
- 2.De opslagwachtrij wordt volledig leeggemaakt.
- 3.De achtergrond-persistentie-thread wordt veilig gestopt.
Doel:
- •Garandeert dat de nieuwste handelstoestand naar schijf wordt geschreven voordat wordt afgesloten.