Hallo,
Ik heb hier een dag zitten op zoeken en sta nergens... Vandaar dat ik hier even kom aankloppen of te zien of iemand mij op weg kan helpen/kan meehelpen denken. Ik ben geen Dev dus misschien zoek ik het veel te ver/kan het veel makkelijker. Alle suggesties zijn welkom ! :-)
Ik heb een algoritme draaien die Bitcoin trade. Nu wil ik dit algoritme ook laten gebruiken door een vriend van mij. Ik heb zijn API keys gekregen en kan dus traden op zijn account. Via Websocket data kopieer ik elke acties over naar zijn account. De logica/het script hiervoor heb ik volledig gemaakt en het doet exact wat het moet doen. Echter sla ik alle gegevens (timestamp, coin naam, quantity, ...) momenteel op in een var = db [] . Als het script om één of andere reden crasht ben ik natuurlijk alles kwijt en lopen we het gevaar dat er vreemde dingen gebeuren...
Ik wil de data dus opslaan in een Postgres database. Postgres en Pgadmin zijn geïnstalleerd op mijn Linux VPS en de database + table werden ook aangemaakt. De communicatie tussen Node en Postgres doe ik via de pg module (https://node-postgres.com/).
Ik heb door copy/paste (opzoek)werk op Google commando's gevonden die ik kan uitvoeren via PgAdmin die lijken te werken. Ik krijg ze echter niet werkende in Node/PG
Wanneer het Master account een munt aankoopt voer ik volgende actie uit (als simulatie in PgAdmin Query Tool):
Postgres add new entry:
Als het order effectief uitgevoerd werd op de Master account moet ik het OrderId toevoegen aan de kolom orderid:
Add Master orderId record ('ADAUSDT' is een variabele alsook '123456'):
Bij de volgende stap loop ik vast... Het Slave account voert het order uit en dit orderId moet toegevoegd worden in het object waar we reeds het master orderid hebben in opgeslagen. Het resultaat zou dus moeten zijn [code=js{"slave": "56789", "master": "12345"}. Er kunnen ook meerdere orders uitgevoerd worden. In Node met mijn var db = [] werkte ik met een Array Of Objects en dit probeer ik ook zo te doen in Postgres. Het resultaat in Node was dus
Dit is dus hoe mijn huidige structuur er uitziet:

Dus kort samengevat zoek ik een manier om het Slave orderid toe te voegen aan het master orderid, het slave orderid te kunnen opzoeken adhv het master orderid, ... en dit via de pg module in Node.
Het hoeft dus zeker geen "Array of Objects" te zijn in Postgres. Als je een andere/makkelijkere manier weet waarmee ik de connectie kan maken tussen het Slave <-> Master orderId dan ben ik hier ook gelukkig mee ! :-)
Alvast bedankt voor de reacties!
Ik heb hier een dag zitten op zoeken en sta nergens... Vandaar dat ik hier even kom aankloppen of te zien of iemand mij op weg kan helpen/kan meehelpen denken. Ik ben geen Dev dus misschien zoek ik het veel te ver/kan het veel makkelijker. Alle suggesties zijn welkom ! :-)
Ik heb een algoritme draaien die Bitcoin trade. Nu wil ik dit algoritme ook laten gebruiken door een vriend van mij. Ik heb zijn API keys gekregen en kan dus traden op zijn account. Via Websocket data kopieer ik elke acties over naar zijn account. De logica/het script hiervoor heb ik volledig gemaakt en het doet exact wat het moet doen. Echter sla ik alle gegevens (timestamp, coin naam, quantity, ...) momenteel op in een var = db [] . Als het script om één of andere reden crasht ben ik natuurlijk alles kwijt en lopen we het gevaar dat er vreemde dingen gebeuren...
Ik wil de data dus opslaan in een Postgres database. Postgres en Pgadmin zijn geïnstalleerd op mijn Linux VPS en de database + table werden ook aangemaakt. De communicatie tussen Node en Postgres doe ik via de pg module (https://node-postgres.com/).
Ik heb door copy/paste (opzoek)werk op Google commando's gevonden die ik kan uitvoeren via PgAdmin die lijken te werken. Ik krijg ze echter niet werkende in Node/PG
Wanneer het Master account een munt aankoopt voer ik volgende actie uit (als simulatie in PgAdmin Query Tool):
Postgres add new entry:
JavaScript:
1
| INSERT INTO db (timestamp, coin, pause, orderid, qtyavailable, side) VALUES ('2021-09-28 22:45:00+02', 'ADAUSDT', false, null, 100, 'LONG') |
Als het order effectief uitgevoerd werd op de Master account moet ik het OrderId toevoegen aan de kolom orderid:
Add Master orderId record ('ADAUSDT' is een variabele alsook '123456'):
JavaScript:
1
| UPDATE db SET orderid = orderid || '{"slave": "", "master": "123456"}' ::jsonb WHERE coin= 'ADAUSDT'; |
Bij de volgende stap loop ik vast... Het Slave account voert het order uit en dit orderId moet toegevoegd worden in het object waar we reeds het master orderid hebben in opgeslagen. Het resultaat zou dus moeten zijn [code=js{"slave": "56789", "master": "12345"}. Er kunnen ook meerdere orders uitgevoerd worden. In Node met mijn var db = [] werkte ik met een Array Of Objects en dit probeer ik ook zo te doen in Postgres. Het resultaat in Node was dus
JavaScript:
.1
| orderid [{"slave": "56789", "master": "12345"}, {"slave": "98765", "master": "54321"}] |
Dit is dus hoe mijn huidige structuur er uitziet:

Dus kort samengevat zoek ik een manier om het Slave orderid toe te voegen aan het master orderid, het slave orderid te kunnen opzoeken adhv het master orderid, ... en dit via de pg module in Node.
Het hoeft dus zeker geen "Array of Objects" te zijn in Postgres. Als je een andere/makkelijkere manier weet waarmee ik de connectie kan maken tussen het Slave <-> Master orderId dan ben ik hier ook gelukkig mee ! :-)
Alvast bedankt voor de reacties!