En bot for automatisk lommebokspeiling oversetter observert aktivitet til endringer i en annen konto. Uttrykket speile kan bety å kopiere hvert handelsbeløp, kopiere en prosentvis endring eller opprettholde en målposisjon knyttet til en kildebeholdning. Fremgangsmåtene kan gi forskjellige følgerporteføljer, særlig etter avviste innganger, delvis utførelse eller manuelle overføringer. En pålitelig arbeidsflyt må velge betydning før den begynner å sende ordrer.
Det sentrale tekniske problemet er å bevare betydningen gjennom forsinkelser og omstarter. En gjentatt kildehendelse må ikke skape gjentatt eksponering, og et manglende svar må ikke viske ut en transaksjon som allerede kan være utført. Artikkelen bruker fiktive spothandelseksempler til å utvikle hendelsesbetydning, skalering og gjenoppretting. Den forutsetter ikke at det å følge en annen konto skaper fortjeneste eller avslører kildeeierens fullstendige strategi.
Hendelsesbetydningen i en bot for automatisk lommebokspeiling definerer produktet
Hendelsesbasert speiling reagerer på en støttet handling, for eksempel et klassifisert kjøp eller salg. Posisjonsbasert speiling beregner i stedet ønsket følgerbeholdning fra observert kildetilstand. Skillet betyr noe når observatøren går glipp av flere hendelser eller følgeren bevisst avstår fra én. Hendelseskopiering følger en sekvens; posisjonsstyring forsøker å redusere en nåværende forskjell.
Ingen av fremgangsmåtene bør forbli underforstått. En hendelsesfølger som uventet henter inn hele kildebeholdningen, kan kjøpe langt mer enn operatøren planla. En posisjonsfølger som bare kopierer neste handelsbeløp, kan aldri nå oppgitt mål etter en tidligere feil. Angi valgt metode og vilkårene for at den kan endres.
Veiledningen om kopieringshandelsstrategi forklarer bredere policyvalg. Uttrykk regelen i en testbar setning for en implementasjon. En uttrykkelig fiktiv policy kan for eksempel speile en støttet prosentvis reduksjon av kildens observerte posisjon mot følgerens egen tilgjengelige beholdning. Setningen identifiserer en hendelse, en nevner og et beholdningsomfang som kan kontrolleres senere.
Identifiser kildeomfang uten å finne på en eier
En overvåket adresse er et observasjonsomfang, ikke nødvendigvis en hel økonomisk portefølje eller en verifisert person. Kilden kan bruke andre adresser, ha eksponering utenfor kjeden eller flytte eiendeler av grunner observatøren ikke kan klassifisere. En speilingsregel må fungere med begrensningene fremfor å behandle én synlig saldo som fullstendig kunnskap om kildens økonomiske hensikter.
På Solana beskriver dokumentasjonen om signaturhistorikk transaksjoner som refererer til en oppgitt adresse. Appen må fortsatt tolke relevante tokenkontoer og transaksjonskontekst. En returnert historikk fastslår ikke automatisk alle kontoer kontrollert av samme enhet eller hver handel som påvirker dens økonomiske posisjon.
Definer hvilke adresser og støttede eiendelsbevegelser som inngår i kildeomfanget. Hvis omfanget senere endres, bevar versjonen og forklar om følgeren bør vurdere eksisterende mål på nytt. Å legge til en annen overvåket adresse kan skape duplikatobservasjoner eller øke tilsynelatende kildebeholdning. Det bør ikke i det stille autorisere en utvidet følgerportefølje under en policy laget for et snevrere observasjonssett.
Klassifiser den økonomiske hendelsen før skalering brukes
En overføring er ikke automatisk et kjøp, og en belastning av en tokenkonto er ikke automatisk et salg. Klassifikatoren trenger en støttet tolkning av transaksjonen og eiendelene som flyttes. Ellers kan skaleringslogikken være tallmessig riktig og samtidig gjelde feil type hendelse. Ti prosent av en feilklassifisert overføring er fortsatt en ubegrunnet handelsinstruks.
Hold rå transaksjonsreferanse, tolket økonomisk hendelse og klassifiseringens sikkerhetsgrad sammen. En flertrinnsrute kan inneholde flere tokenbevegelser og representere ett bytte. Duplikatkontroll bør bevare legitime separate hendelser og unngå flere følgerhandler for mellomliggende bevegelser i samme bytte. Aktivitet som ikke støttes, kan forbli undersøkelsesdata uten å bli utførbare inndata.
Veiledningen om lommeboksporing utdyper skillet mellom dokumentasjon og tolkning. I et speilingssystem beskytter skillet autorisasjonsgrensen. En klassifikatoroppdatering kan endre undersøkelseshistorikk, men bør ikke i ettertid fremstille et nytt signal i drift fra en gammel transaksjon uten en fersk policybeslutning basert på nåværende forhold.
Skaleringsregler i en bot for automatisk lommebokspeiling trenger enheter
En fast mengdemultiplikator, et fast utgiftsbeløp og en prosent-av-posisjon-regel har forskjellige enheter. Multiplikasjon av kildens tokenmengde med 0,1 gir en måltokenmengde. Tildeling av 50 regnskapsenheter gir et utgiftsbudsjett der tokenmottaket avhenger av nåværende pristilbud. Salg av halvparten av følgerens posisjon bruker dens egen beholdning, ikke kildens opprinnelige beløp.
Ved et fiktivt kildekjøp på 10 000 tokens foreslår en mengderegel på 10 % 1 000 følgertokens. Hvis følgeren i stedet har et budsjett på 50 enheter og dagens støttede pristilbud gir 800 tokens, er forslagene forskjellige. Kontrolleren bør ikke merke dem som likeverdige bare fordi begge skal følge samme kildehendelse.
Skalering trenger også tak og praktiske minstestørrelser. Et proporsjonalt resultat kan overstige tilgjengelige midler eller skape en svært liten ordre der faste kostnader dominerer verdien. Bruk følgerens konto- og eiendelsgrenser før autorisasjon. Registrer om forslaget ble avkortet, avrundet eller avvist, slik at senere gjennomgang kan forklare hvorfor følgerbeholdningen avvek fra den kildeavledede mengden.
Avgjør hva som skjer når følging begynner midt i en posisjon
En kilde kan allerede holde en stor tokensaldo når sporing starter. Følgeren kan begynne uten posisjon og bare handle på fremtidige kvalifiserte hendelser, etablere et uttrykkelig autorisert startmål eller forbli i observasjonsmodus. Dette er forskjellige policyer. Tillegg til en overvåkingsliste bør ikke i det stille utløse kjøp av hele kildens skalerte beholdning.
Ukjent kildehistorikk for anskaffelse kompliserer beslutningen. Den synlige beholdningen kan ha kommet gjennom overføringer eller tidligere kjøp utenfor tilgjengelig registrering. En følger som går inn nå, møter dagens pris og likviditet, uansett hvor attraktivt et antatt historisk grunnlag ville se ut. Bevar ukjent grunnlag fremfor å behandle startbeholdningen som en dokumentert vellykket handel.
I et fiktivt tilfelle begynner kilden med én million tokens og kjøper senere ytterligere 20 000. Under en mengderegel på 1 % bare for fremtidige hendelser er nytt forslag 200 tokens. Under en målposisjonsregel på 1 % ville målet etter kjøpet være 10 200 tokens før følgerspesifikke begrensninger. Den store forskjellen kommer fra oppgitt startpolicy, ikke en implementasjonsdetalj som trygt kan forbli uspesifisert.
Gjør en målforskjell om til én varig intensjon
For posisjonsbasert speiling, beregn ønsket beholdning, trekk fra bekreftede beholdninger og ta hensyn til ventende autoriserte endringer. Resultatet er en kandidatjustering, ikke automatisk en handel. Den trenger fortsatt et ferskt pristilbud, støttet eiendelsatferd og tilgjengelige ressurser. Et mål kan forbli midlertidig uoppfylt når vilkårene svikter.
Anta et fiktivt mål på 1 000 tokens. Følgeren holder 600 og har et uavklart kjøp som skal legge til 250. Gjenværende uforpliktet forskjell er 150, ikke 400, under oppgitte mengdeforutsetninger. Å ignorere ventende kjøp kan få kontoen til å overskride målet hvis begge forsøk fullføres. Bevar usikkerhet når endelig mottak er avgrenset fremfor eksakt.
Registrer intensjonen før arbeid som kan ha eksterne virkninger sendes ut. Identifikatoren bør koble kildehendelse eller målberegning, policyversjon, godkjent mengde og konto. En annen arbeider som møter samme beslutning, bør finne registreringen og nåværende tilstand. Varig intensjon gjør gjenoppretting mulig uten å anta at hver forespørsel og hvert svar kommer nøyaktig én gang.
Skill duplikatmeldinger fra dupliserte beslutninger
En kildehendelse kan leveres gjennom flere datastrømmer eller gjentas etter ny tilkobling. En transportmeldingsidentifikator kan endres selv når underliggende transaksjon er identisk. Fjern duplikater med stabil økonomisk hendelsesidentitet og støttet tolkningsomfang. Ikke slå sammen to legitime handler bare fordi de gjelder samme token og lignende mengder.
Beslutningsidentitet inkluderer også policykonteksten. En gammel hendelse vurdert under en tidligere regel bør ikke automatisk bli en fersk handel hver gang konfigurasjonen endres. Bevisst ny vurdering kan være riktig, men må registreres som en ny nåværende beslutning med ferske pristilbud og grenser. Det hindrer at rutinevedlikehold blir en utilsiktet motor for historiske innhentingshandler.
En fiktiv datastrøm sender samme støttede kjøp tre ganger. Første melding skaper én kandidat og én autorisert intensjon. Senere meldinger oppdaterer leveringsdokumentasjon eller bekrefter eksisterende arbeid; de bruker ikke hver sin nye tildeling. En avspillingstest bør verifisere atferden gjennom prosessomstarter, ikke bare mens et praktisk allerede sett-sett i minnet forblir intakt.
Reserver beholdning for speilede reduksjoner
En kildereduksjon bør oversettes til en følgerreduksjon under valgt regel og nå tilgjengelig beholdning. Kildens rå solgte mengde kan være uten forbindelse til følgerbeholdningen etter tidligere tak eller kjøp det ble avstått fra. Blind skalering fra opprinnelig kildebeløp kan be om et salg større enn følgerens eierskap eller mindre enn planlagt prosentvis reduksjon.
I et fiktivt eksempel selger kilden halvparten av sin observerte posisjon på 10 000 tokens. Følgeren holder bare 600 fordi et tidligere kjøp ble avkortet. En regel som speiler støttet reduksjonsprosent, foreslår salg av 300 følgertokens. En separat fast regel på 10 % av kildemengden ville foreslå 500. Begge regneresultater er mulige, men bare ett samsvarer med policyen operatøren valgte.
Reserver godkjent salgsmengde mens forsøket forblir uavklart. Et nytt kildesalg eller et lokalt stoppvilkår må se reservasjonen. Speiling og uavhengige risikoutganger deler samme beholdning selv når de har forskjellige begrunnelser. Veiledningen om autosalgets livssyklus forklarer hvordan samordnet mengdekontroll hindrer overlappende instrukser i å handle med samme enheter.
Skill delvis ordreutførelse fra delvis strategifullføring
Utførelsesmekanismer varierer. En støttet ordrebokordre kan utføres delvis og etterlate en aktiv rest, mens ett støttet atomisk bytte enten kan utføre sine autoriserte tilstandsendringer eller mislykkes. En strategi av flere separate bytter kan fortsatt bare fullføre noen planlagte deler. Bruk riktig tolkning for faktisk handelsplass fremfor å kalle ethvert ufullstendig mål en delvis transaksjonsutførelse.
I et fiktivt ordrebasert eksempel søker en intensjon 1 000 tokens, mottar 600 og beholder en aktiv rest på 400. Kontrolleren registrerer utført beholdning og gjenværende forpliktelse. Kansellering av resten visker ikke ut anskaffelsen på 600 tokens. En senere erstatning bør ta hensyn til faktisk nåværende mål og ferske vilkår, ikke automatisk be om ytterligere hele 1 000.
I et separat eksempel med flere transaksjoner planlegges tre uavhengige kjøp på 200 tokens, og bare to fullføres. Strategien anskaffet 400 selv om hver fullført transaksjon enkeltvis var atomisk. Ufullstendighet på gruppenivå og atomisitet på transaksjonsnivå er forskjellige egenskaper. Skillet holder beholdningsregnskapet nøyaktig på tvers av handelsplasstyper og hindrer at gjenopprettingslogikk antar en alt-eller-ingenting-garanti arbeidsflyten aldri ga.
Behandle et tidsavbrudd som en uavklart ekstern virkning
Et lokalt forespørselstidsavbrudd fastslår ikke at den eksterne handlingen mislyktes. Transaksjonen kan ha blitt mottatt eller utført før svaret gikk tapt. Arbeidsflyten bør beholde ekstern referanse og reserverte ressurser mens den søker dokumentasjon. Å skape et nytt uavhengig kjøp bare fordi opprinnelig svar mangler, kan duplisere eksponering.
På Solana skiller referansen for transaksjonsinnsending RPC-mottak fra nettverksbehandling eller bekreftelse. Kontrolleren må følge opprinnelig transaksjon gjennom passende status- og kontodokumentasjon. Den bør også skille ny sending av samme signerte transaksjon fra bygging av en ny transaksjon med ny identitet og potensielt separat utførelsesvirkning.
Relevant gjenopprettingspolicy avhenger av nettverk og støttet handling. En universell prøv-til-det-lykkes-løkke er ikke nok. Definer hvilken dokumentasjon som fastslår fullføring, definitiv feil eller bortfalt gyldighet, og hvilken ny autorisasjon som kreves etterpå. Intensjonen forblir den varige forklaringen på hva følgeren ønsket, mens hvert faktisk eksternt forsøk beholder egen livssyklus og kostnadsregistrering.
Omstartsgjenoppretting i en bot for automatisk lommebokspeiling begynner med avstemming
Etter omstart lastes først varige intensjoner, uavklarte eksterne referanser og kontoreservasjoner. Sammenlign dem deretter med nåværende støttet transaksjons- og saldodokumentasjon. Først etter at konteksten er gjenopprettet, bør kontrolleren autorisere nytt kildedrevet arbeid. En nylig tom minnehurtigbuffer er ikke bevis på at kontoen ikke har ventende forpliktelser.
Test gjenoppretting ved den vanskelige grensen der en transaksjon utføres, men lokal fullføringsregistrering ennå ikke er lagret. Den omstartede prosessen bør oppdage eksisterende utfall og merke intensjonen fullført. Den bør ikke gjenta handelen for å gjenskape en lokal registrering. En allerede fullført intensjon bør tilsvarende forbli fullført når en duplikat kildehendelse senere kommer.
Et fiktivt system starter på nytt med ett uavklart kjøp på 40 enheter og en samlet kapasitetsgrense på 100. Til opprinnelig forsøk er avstemt, forblir høyst 60 enheter uforpliktet før andre beholdninger og kostnader. Å behandle hele grensen som tilgjengelig etter omstart ville gjøre sikkerhetsegenskapen avhengig av uavbrutt prosessoppetid. Varige reservasjoner bevarer kontoregelen gjennom avbruddet.
Avstem manuelle endringer uten å gjette formålet
Følgeren kan motta tokens, gjøre et manuelt salg eller overføre eiendeler utenfor den automatiserte arbeidsflyten. Bevegelsene kan endre tilgjengelig mengde og forholdet til målet. Oppdag dem og bruk en oppgitt policy. Ikke anta at hver saldoforskjell er en manglende speilet handel som automatisk bør rettes.
Hvis en posisjonsbasert kontroller tolker hvert manuelt salg som målavvik, kan den umiddelbart kjøpe tilbake det operatøren bevisst fjernet. En tydelig pause- eller manuelljusteringspolicy hindrer konflikten. Operatøren bør kunne endre mål, koble fra posisjon eller kreve gjennomgang fremfor å kjempe mot en usynlig prosess som stadig gjenoppretter gammel fordeling.
For en fiktiv følger som holder 900 tokens mot et mål på 1 000, etterlater en manuell overføring på 300 lokalt 600. Om kontrolleren foreslår ytterligere 400, avhenger av autorisert behandling av eksterne endringer. Regnestykket alene kan ikke avgjøre brukerens hensikt. Bevar bevegelsen og policyresponsen slik at resulterende kontotilstand forblir forklarlig.
Håndter kildereverseringer og observasjoner i feil rekkefølge
En forsinket datastrøm kan rapportere et tidligere kjøp etter at et senere salg allerede har kommet gjennom en annen vei. Behandling strengt etter ankomstrekkefølge kan skape en følgersekvens som aldri samsvarer med kildekronologien. Bevar dokumentasjon om kilderekkefølge og identifiser hull før policyresponsen avgjøres.
Et posisjonsbasert system kan vente til det kan fastslå en akseptabel nåværende kildetilstand og deretter vurdere en målforskjell. Et hendelsesbasert system kan klassifisere den sene hendelsen som historisk og avstå fra å handle på den. Ingen av fremgangsmåtene bør automatisk anta at hver forsinket melding fortsatt er en aktuell mulighet. Valgt atferd bør være en del av regelen fremfor improvisasjon under et avbrudd.
Anta at en fiktiv kilde kjøper 1 000 tokens og kort etter selger 800. Følgeren observerer først salget og mottar så det eldre kjøpet. Blind kopiering etter ankomstrekkefølge kan selge før kjøp eller ende med unødvendig stor beholdning. Rekonstruksjon av støttet kronologi viser en netto observert økning på 200, selv om riktig følgerhandling fortsatt avhenger av valgt hendelses- eller posisjonsbetydning og gjeldende begrensninger.
Bruk avgrenset avvik fremfor stadig unødvendig rebalansering
Et posisjonsmål kan avvike litt fra faktisk beholdning på grunn av avrunding, kostnader, delvise utfall eller små kildeendringer. Rebalansering av hver liten forskjell kan skape overdreven omsetning. Definer et akseptabelt avviksintervall i meningsfulle enheter og angi når forskjellen blir stor nok til å begrunne en ny vurdering.
I en fiktiv policy er målet 1 000 tokens og beholdningen 995. En justering på fem tokens kan ha lavere økonomisk verdi enn utførelseskostnaden. Kontrolleren kan bevare forskjellen uten å late som målet er nådd nøyaktig. Hvis målet senere blir 1 300, kan det større gapet begrunne en fersk beslutning under samme dokumenterte regler.
Et avviksintervall er et strategivalg, ikke en skjult regnskapsretting. Rapporter faktisk mengde og mål separat. Ikke avrund vist beholdning til målet og bruk deretter den avrundede verdien til senere salgsberegninger. Nøyaktig resttilstand er avgjørende når en senere reduksjon, manuell overføring eller omstart avhenger av mengden kontoen faktisk kontrollerer.
Verifiser ufravikelige egenskaper gjennom en fullstendig gjenopprettingsøvelse
Definer noen egenskaper som bør forbli sanne på tvers av alle hendelser. Fullførte kildebeslutninger skaper ikke dupliserte intensjoner. Mulig eksponering inkluderer uavklarte kjøp. Reserverte salgsmengder overstiger ikke støttet tilgjengelighet. En gjenopprettet prosess bevarer samme kontogrenser som en uavbrutt. Egenskapene er nyttigere enn en demonstrasjon av at én ukomplisert handel kan kopieres raskt.
Øv på duplikatlevering, et tapt svar, delvis fullføring, en manuell justering, kildereversering og omstart etter utførelse, men før lokal bekreftelse. Angi forventet beholdning og reservasjoner etter hvert trinn. Ta med tilfeller der riktig resultat er en pauset eller uavklart tilstand fremfor en umiddelbar transaksjon.
En bot for automatisk lommebokspeiling er forståelig når kildetolkning, skaleringsregel og gjenopprettingsatferd leder til samme avgrensede kontotilstand ved gjentatt observasjon. Den kan verken gjøre en forsinket følger identisk med kilden eller garantere gunstige priser. Den kan bevare det som ble autorisert, fastslå hva som faktisk skjedde og synliggjøre gjenværende forskjell før neste beslutning.