En bot til automatisk walletspejling omsætter observeret aktivitet til ændringer på en anden konto. Ordet spejling kan betyde kopiering af hvert handelsbeløb, kopiering af en procentvis ændring eller opretholdelse af en målposition knyttet til en kildebeholdning. Tilgangene kan give forskellige følgerporteføljer, især efter afviste indgange, delvis udførelse eller manuelle overførsler. En pålidelig arbejdsgang skal vælge sin betydning, før den begynder at sende ordrer.

Det centrale tekniske problem er at bevare denne betydning gennem forsinkelser og genstarter. En gentaget kildehændelse må ikke skabe gentagen eksponering, og et manglende svar må ikke slette en transaktion, der allerede kan være udført. Artiklen bruger fiktive spothandelseksempler til at udvikle hændelsesbetydning, skalering og genopretning. Den antager ikke, at følgning af en anden konto skaber overskud eller afslører kildeejerens fulde strategi.

Hændelsesbetydningen i en bot til automatisk walletspejling definerer produktet

Hændelsesbaseret spejling reagerer på en understøttet handling, eksempelvis et klassificeret køb eller salg. Positionsbaseret spejling beregner i stedet en ønsket følgerbeholdning ud fra en observeret kildetilstand. Sondringen betyder noget, når observatøren mister flere hændelser, eller følgeren bevidst springer én over. Hændelseskopiering følger en sekvens; positionsmål forsøger at reducere en aktuel forskel.

Ingen tilgang bør forblive underforstået. En hændelsesfølger, der uventet indhenter en kildes fulde beholdning, kan købe langt mere end tilsigtet af operatøren. En positionsfølger, der blot kopierer det næste handelsbeløb, når måske aldrig sit erklærede mål efter en tidligere fejl. Angiv den valgte metode og de betingelser, hvorunder den må ændres.

Vejledningen til kopihandelsstrategi forklarer de bredere politikvalg. Udtryk ved implementering reglen i en sætning, der kan testes. En udtrykkeligt fiktiv politik kan eksempelvis spejle en understøttet procentvis reduktion af kildens observerede position mod følgerens egen disponible beholdning. Sætningen identificerer en hændelse, et beregningsgrundlag og et beholdningsomfang, som senere kan kontrolleres.

Identificer kildeomfanget uden at opfinde en ejer

En overvåget adresse er et observationsomfang, ikke nødvendigvis en hel økonomisk portefølje eller en verificeret person. Kilden kan bruge andre adresser, have eksponering uden for kæden eller flytte aktiver af grunde, observatøren ikke kan klassificere. En spejlingsregel skal arbejde med begrænsningerne frem for at behandle én synlig saldo som fuldt kendskab til kildens økonomiske hensigter.

På Solana beskriver dokumentationen om signaturhistorik transaktioner, der henviser til en angivet adresse. Applikationen skal stadig fortolke relevante tokenkonti og transaktionskontekst. En returneret historik fastslår ikke automatisk alle konti kontrolleret af samme enhed eller enhver handel, der påvirker dens økonomiske position.

Definer, hvilke adresser og understøttede aktivbevægelser der hører til kildeomfanget. Hvis omfanget senere ændres, skal versionen bevares, og det forklares, om følgeren bør revurdere eksisterende mål. Tilføjelse af en anden overvåget adresse kan skabe dobbelte observationer eller øge den tilsyneladende kildebeholdning. Det bør ikke stiltiende godkende en udvidet følgerportefølje under en politik udformet til et snævrere observationssæt.

Klassificer den økonomiske hændelse, før en skala anvendes

En overførsel er ikke automatisk et køb, og en tokendebitering er ikke automatisk et salg. Klassifikationen kræver en understøttet fortolkning af transaktionen og de flyttede aktiver. Ellers kan skaleringslogikken være talmæssigt korrekt og samtidig blive anvendt på den forkerte hændelsestype. Ti procent af en fejlklassificeret overførsel er stadig en uberettiget handelsinstruktion.

Bevar rå transaktionsreference, fortolket økonomisk hændelse og klassifikationssikkerhed sammen. En flertrinsrute kan indeholde flere tokenbevægelser, men repræsentere én udveksling. Fjernelse af dubletter bør bevare legitime særskilte hændelser og samtidig undgå flere følgerhandler for mellembevægelser i samme udveksling. Ikke-understøttet aktivitet kan forblive undersøgelsesdata uden at blive input til udførelse.

Vejledningen til walletsporing uddyber adskillelsen mellem belæg og fortolkning. I et spejlingssystem beskytter sondringen godkendelsesgrænsen. En klassifikationsopdatering kan ændre undersøgelseshistorikken, men bør ikke med tilbagevirkende kraft skabe et nyt signal i virkelig drift fra en gammel transaktion uden en ny politikbeslutning baseret på aktuelle forhold.

Skaleringsregler i en bot til automatisk walletspejling kræver enheder

En fast mængdemultiplikator, et fast forbrugsbeløb og en regel om procent af positionen har forskellige enheder. At gange kildens tokenmængde med 0,1 giver en måltokenmængde. At tildele 50 regnskabsenheder giver et forbrugsbudget, hvis tokenmodtagelse afhænger af det aktuelle tilbud. Salg af halvdelen af følgerens position bruger dens egen beholdning, ikke kildens oprindelige beløb.

For et fiktivt kildekøb på 10.000 tokens foreslår en mængderegel på 10% 1.000 følgertokens. Hvis følgeren i stedet har et budget på 50 enheder, og det aktuelle understøttede tilbud giver 800 tokens, er de to forslag forskellige. Styringen bør ikke kalde dem ækvivalente, blot fordi begge skal følge samme kildehændelse.

Skalering kræver også lofter og praktiske minimummer. Et proportionalt resultat kan overskride disponible midler eller skabe en meget lille ordre, hvis faste omkostninger dominerer værdien. Anvend følgerens konto- og aktivgrænser før godkendelse. Registrer, om forslaget blev begrænset, afrundet eller afvist, så en senere gennemgang kan forklare, hvorfor følgerens beholdning afveg fra den kildeafledte mængde.

Afgør, hvad der sker, når følgning begynder midt i en position

En kilde kan allerede have en stor tokenbeholdning, når sporingen starter. Følgeren kan begynde uden position og kun handle på fremtidige kvalificerende hændelser, etablere et udtrykkeligt godkendt startmål eller forblive i observationstilstand. Det er forskellige politikker. At blive tilføjet til en observationsliste bør ikke stiltiende udløse køb af kildens fulde skalerede beholdning.

Ukendt kildeanskaffelseshistorik komplicerer beslutningen. Den synlige beholdning kan være ankommet gennem overførsler eller tidligere køb uden for den tilgængelige registrering. En følger, der går ind nu, møder den aktuelle pris og likviditet, uanset hvor attraktivt et antaget historisk grundlag ser ud. Bevar ukendt grundlag frem for at behandle startbeholdningen som en demonstreret vellykket handel.

I et fiktivt tilfælde begynder kilden med én million tokens og køber senere yderligere 20.000. Under en mængderegel på 1% for kun fremtidige hændelser er det nye forslag 200 tokens. Under en målpositionsregel på 1% ville målet efter købet være 10.200 tokens før følgerspecifikke begrænsninger. Den store forskel kommer fra den erklærede startpolitik, ikke en implementeringsdetalje, der trygt kan stå uspecificeret.

Gør en målforskel til én varig hensigt

Ved positionsbaseret spejling beregnes den ønskede beholdning, bekræftede beholdninger trækkes fra, og afventende godkendte ændringer medregnes. Resultatet er en kandidatjustering, ikke automatisk en handel. Den kræver stadig et nyt tilbud, understøttet aktivadfærd og disponible ressourcer. Et mål kan midlertidigt forblive uopfyldt, når disse betingelser svigter.

Antag, at et fiktivt mål er 1.000 tokens. Følgeren har 600 og et uafklaret køb, der skal tilføje 250. Den resterende ubundne forskel er 150, ikke 400, under de angivne mængdeantagelser. Ignorering af det afventende køb kunne få kontoen til at overskride målet, hvis begge forsøg gennemføres. Bevar usikkerheden, når den endelige modtagelse er afgrænset frem for præcis.

Registrer hensigten, før arbejde med mulige eksterne virkninger sendes afsted. Dens identifikator bør forbinde kildehændelsen eller målberegningen, politikversionen, den godkendte mængde og kontoen. En anden arbejder, der møder samme beslutning, bør finde registreringen og dens aktuelle tilstand. Varig hensigt muliggør genopretning uden at antage, at hver anmodning og hvert svar ankommer præcis én gang.

Skeln dobbelte beskeder fra dobbelte beslutninger

En kildehændelse kan leveres gennem flere feeds eller gentages efter genforbindelse. En transportbeskeds identifikator kan ændres, selv når den underliggende transaktion er identisk. Fjern dubletter ud fra den stabile økonomiske hændelsesidentitet og det understøttede fortolkningsomfang. Slå samtidig ikke to legitime handler sammen, blot fordi de vedrører samme token og lignende mængder.

Beslutningsidentitet omfatter også politikkonteksten. En gammel hændelse vurderet under en tidligere regel bør ikke automatisk blive en ny handel, hver gang konfigurationen ændres. En bevidst revurdering kan være passende, men skal registreres som en ny aktuel beslutning med aktuelle tilbud og grænser. Det forhindrer rutinemæssig vedligeholdelse i at blive en utilsigtet motor til historisk indhentning.

Et fiktivt feed sender samme understøttede køb tre gange. Den første besked skaber én kandidat og én godkendt hensigt. Senere beskeder opdaterer leveringsbelægget eller bekræfter eksisterende arbejde; de bruger ikke hver en ny bevilling. En genafspilningstest bør verificere adfærden på tværs af procesgenstarter, ikke kun mens et bekvemt sæt af allerede sete hændelser i hukommelsen forbliver intakt.

Reserver beholdning til spejlede reduktioner

En kildereduktion bør omsættes til en følgerreduktion under den valgte regel og den aktuelle disponible beholdning. Kildens rå solgte mængde kan være uden forbindelse til følgerens beholdning efter tidligere lofter eller fravalgte køb. Blind skalering fra det oprindelige kildebeløb kan anmode om et salg større end følgerens ejerskab eller mindre end den tilsigtede procentreduktion.

I et fiktivt eksempel sælger kilden halvdelen af sin observerede position på 10.000 tokens. Følgeren har kun 600 tokens, fordi et tidligere køb blev begrænset. En regel, der spejler den understøttede reduktionsprocent, foreslår salg af 300 følgertokens. En særskilt fast regel på 10% af kildemængden ville foreslå 500. Begge regneresultater er mulige, men kun ét matcher den valgte politik.

Reserver den godkendte salgsmængde, mens forsøget er uafklaret. Et andet kildesalg eller en lokal stopbetingelse skal se reservationen. Spejling og uafhængige risikosalg deler samme beholdning, selv når de har forskellige begrundelser. Vejledningen til automatisk salgslivscyklus forklarer, hvordan koordineret mængdekontrol forhindrer overlappende instruktioner i at handle på samme enheder.

Skeln delvis ordregennemførelse fra delvis strategiafslutning

Udførelsesmekanismer er forskellige. En understøttet ordrebogsordre kan gennemføres delvist og efterlade en aktiv rest, mens en enkelt understøttet atomar swap enten kan udføre sine godkendte tilstandsændringer eller mislykkes. En strategi med flere særskilte swaps kan stadig kun få afsluttet nogle af sine planlagte dele. Brug den korrekte fortolkning for det faktiske handelssted frem for at kalde ethvert ufuldstændigt mål en delvis transaktionsgennemførelse.

I et fiktivt ordrebaseret eksempel søger en hensigt 1.000 tokens, modtager 600 og beholder en aktiv rest på 400. Styringen registrerer den gennemførte beholdning og den resterende forpligtelse. Annullering af resten sletter ikke anskaffelsen af 600 tokens. En senere erstatning bør tage højde for det faktisk aktuelle mål og nye vilkår frem for automatisk at anmode om yderligere fulde 1.000.

I et særskilt eksempel med flere transaktioner planlægges tre uafhængige køb på 200 tokens, og kun to gennemføres. Strategien anskaffede 400, selv om hver afsluttet transaktion var individuelt atomar. Ufuldstændighed på gruppeniveau og atomicitet på transaktionsniveau er forskellige egenskaber. Sondringen holder beholdningsregnskabet korrekt på tværs af handelssteder og forhindrer genopretningslogik i at antage en alt-eller-intet-garanti, som den faktiske arbejdsgang aldrig gav.

Behandl timeout som en uafklaret ekstern virkning

En lokal anmodningstimeout fastslår ikke, at den eksterne handling mislykkedes. Transaktionen kan være accepteret eller udført, før svaret gik tabt. Arbejdsgangen bør bevare sin eksterne reference og reserverede ressourcer, mens den søger belæg. At skabe et nyt uafhængigt køb, blot fordi det oprindelige svar mangler, kan duplikere eksponering.

På Solana skelner referencen for transaktionsindsendelse mellem RPC-accept og netværksbehandling eller bekræftelse. Styringen skal følge den oprindelige transaktion gennem passende status- og kontobelæg. Den bør også skelne genafsendelse af samme signerede transaktion fra konstruktion af en ny transaktion med ny identitet og potentielt særskilt udførelsesvirkning.

Den relevante genopretningspolitik afhænger af netværk og understøttet handling. En universel løkke, der prøver igen indtil succes, er utilstrækkelig. Definer, hvilket belæg der fastslår afslutning, endelig fiasko eller tab af gyldighed, og hvilken ny godkendelse der kræves bagefter. Hensigten forbliver den varige forklaring af, hvad følgeren ønskede, mens hvert faktisk eksternt forsøg bevarer sin egen livscyklus og omkostningsregistrering.

Genopretning efter genstart i en bot til automatisk walletspejling begynder med afstemning

Efter en genstart skal varige hensigter, uafklarede eksterne referencer og kontoreservationer først indlæses. Sammenlign dem derefter med aktuelt understøttet transaktions- og saldobelæg. Først efter gendannelse af konteksten bør styringen godkende nyt kildebaseret arbejde. En nyligt tom hukommelsescache er ikke bevis for, at kontoen ingen afventende forpligtelser har.

Test genopretning efter den besværlige grænse, hvor en transaktion udføres, men den lokale afslutningsregistrering endnu ikke er gemt. Den genstartede proces bør opdage det eksisterende udfald og markere hensigten afsluttet. Den bør ikke gentage handlen for at genskabe en lokal registrering. Tilsvarende bør en allerede afsluttet hensigt forblive afsluttet, når en dublet af kildehændelsen senere ankommer.

Et fiktivt system genstarter med ét uafklaret køb på 40 enheder og en samlet kapacitetsgrænse på 100 enheder. Indtil det oprindelige forsøg afstemmes, er højst 60 enheder ubundne før andre beholdninger og omkostninger. At behandle grænsen som fuldt disponibel efter genstart ville gøre sikkerhedsegenskaben afhængig af uafbrudt procesdrift. Varige reservationer bevarer kontoreglen gennem afbrydelsen.

Genopretning efter genstart i en bot til automatisk walletspejling begynder med afstemningRecovery CheckAlready CompletedStill PendingExpired EvidenceNew DecisionTRADING FIELD NOTESEDUCATIONAL RESOURCE
Genopretning efter genstart skelner afsluttet og uafklaret arbejde fra en reelt ny mulighed for at godkende en handel.

Afstem manuelle ændringer uden at gætte deres formål

Følgeren kan modtage tokens, sælge manuelt eller overføre aktiver uden for den automatiserede arbejdsgang. Bevægelserne kan ændre disponibel mængde og forholdet til målet. Opdag dem, og anvend en erklæret politik. Antag ikke, at enhver saldoforskel er en manglende spejlet handel, der automatisk bør rettes.

Hvis en positionsbaseret styring fortolker ethvert manuelt salg som målafvigelse, kan den straks genkøbe det, operatøren bevidst fjernede. En klar pause- eller manuel justeringspolitik forhindrer konflikten. Operatøren bør kunne ændre målet, frakoble positionen eller kræve gennemgang frem for at kæmpe mod en usynlig proces, der bliver ved med at gendanne den gamle fordeling.

For en fiktiv følger med 900 tokens mod et mål på 1.000 tokens efterlader en manuel overførsel på 300 kun 600 lokalt. Om styringen foreslår yderligere 400 afhænger af den godkendte behandling af eksterne ændringer. Regnestykket alene kan ikke afgøre brugerens hensigt. Bevar bevægelsen og politikkens reaktion, så den resulterende kontotilstand forbliver forklarlig.

Håndter kildevendinger og observationer i forkert rækkefølge

Et forsinket feed kan rapportere et tidligere køb, efter at et senere salg allerede er kommet ad en anden vej. Behandling af beskeder strengt i ankomstrækkefølge kan skabe en følgersekvens, som aldrig matcher kildekronologien. Bevar belæg for kilderækkefølgen, og identificer huller, før politikkens reaktion afgøres.

Et positionsbaseret system kan vente, indtil det kan fastslå en acceptabel aktuel kildetilstand, og derefter vurdere en målforskel. Et hændelsesbaseret system kan klassificere den sene hændelse som historisk og undlade handel. Ingen tilgang bør automatisk antage, at enhver forsinket besked stadig er en aktuel mulighed. Den valgte adfærd bør være en del af reglen frem for at blive improviseret under en driftsafbrydelse.

Antag, at en fiktiv kilde køber 1.000 tokens og kort efter sælger 800. Følgeren observerer først salget og modtager derefter det ældre køb. Blind kopiering efter ankomst kunne sælge før køb eller ende med en unødvendigt stor beholdning. Rekonstruktion af den understøttede kronologi viser en observeret nettostigning på 200, selv om den korrekte følgerhandling stadig afhænger af den valgte hændelses- eller positionsbetydning og aktuelle begrænsninger.

Brug afgrænset afvigelse frem for konstant unødvendig rebalancering

Et positionsmål kan afvige lidt fra den faktiske beholdning på grund af afrunding, omkostninger, delvise udfald eller små kildeændringer. Rebalancering af enhver lille forskel kan skabe overdreven omsætning. Definer et acceptabelt afvigelsesinterval i meningsfulde enheder, og angiv, hvornår forskellen bliver stor nok til at begrunde en ny vurdering.

I en fiktiv politik er målet 1.000 tokens og beholdningen 995. En justering på fem tokens kan have mindre økonomisk værdi end sin udførelsesomkostning. Styringen kan bevare forskellen uden at foregive, at målet blev nået præcist. Hvis målet senere bliver 1.300, kan det større hul begrunde en ny beslutning under samme dokumenterede regler.

Et afvigelsesinterval er et strategivalg, ikke en skjult regnskabsrettelse. Rapporter faktisk mængde og mål særskilt. Afrund ikke den viste beholdning til målet for derefter at bruge den afrundede værdi i senere salgsberegninger. Nøjagtig resttilstand er afgørende, når en senere reduktion, manuel overførsel eller genstart afhænger af den mængde, kontoen virkelig kontrollerer.

Verificer ufravigelige egenskaber gennem en fuld genopretningsøvelse

Definer nogle få egenskaber, der bør forblive sande på tværs af alle hændelser. Afsluttede kildebeslutninger skaber ikke dobbelte hensigter. Mulig eksponering omfatter uafklarede køb. Reserverede salgsmængder overstiger ikke understøttet tilgængelighed. En genoprettet proces bevarer samme kontogrænser som en uafbrudt proces. Egenskaberne er mere nyttige end en demonstration af, at én ukompliceret handel kan kopieres hurtigt.

Øv dobbelt levering, et tabt svar, delvis afslutning, en manuel justering, en kildevending og en genstart efter udførelse, men før lokal kvittering. Angiv forventet beholdning og reservationer efter hvert trin. Medtag tilfælde, hvor det korrekte resultat er en pauset eller uafklaret tilstand frem for en øjeblikkelig transaktion.

En bot til automatisk walletspejling er forståelig, når dens kildefortolkning, skaleringsregel og genopretningsadfærd fører til samme afgrænsede kontotilstand under gentagen observation. Den kan ikke gøre en forsinket følger identisk med kilden eller garantere gunstige priser. Den kan bevare det godkendte, fastslå det faktisk skete og gøre den resterende forskel synlig før næste beslutning.

Lær mere

Udforsk alle ressourcer