En bot för automatisk plånboksspegling översätter observerad aktivitet till ändringar på ett annat konto. Spegling kan betyda kopiering av varje affärsbelopp, en procentuell ändring eller upprätthållande av en målposition kopplad till källans innehav. Metoderna kan ge olika följarportföljer, särskilt efter avvisade köp, delvis genomförande eller manuella överföringar. Ett tillförlitligt arbetsflöde måste välja betydelse innan order skickas.
Det centrala teknikproblemet är att bevara betydelsen genom fördröjningar och omstarter. En upprepad källhändelse får inte ge upprepad exponering och ett saknat svar får inte radera en transaktion som redan kan ha genomförts. Artikeln använder fiktiva spothandelsexempel för att utveckla händelsebetydelse, skalning och återställning. Den förutsätter inte att följande av ett annat konto ger vinst eller visar källägarens fullständiga strategi.
Händelsebetydelsen definierar produkten för automatisk plånboksspegling
Händelsebaserad spegling svarar på en handling som stöds, exempelvis klassificerat köp eller försäljning. Positionsbaserad spegling beräknar i stället önskat följarinnehav från observerat källtillstånd. Skillnaden spelar roll när observatören missar flera händelser eller följaren avsiktligt hoppar över en. Händelsekopiering följer en följd; positionsmål försöker minska en aktuell skillnad.
Ingen metod bör lämnas underförstådd. En händelseföljare som oväntat hinner ikapp hela källinnehavet kan köpa mycket mer än operatören avsåg. En positionsföljare som bara kopierar nästa affärsbelopp kanske aldrig når angivet mål efter ett tidigare misslyckande. Ange vald metod och när den får ändras.
Guiden till kopieringsstrategi förklarar bredare policyval. Uttryck regeln i en testbar mening för implementeringen. En uttryckligen fiktiv policy kan exempelvis spegla en procentuell minskning som stöds av källans observerade position mot följarens eget tillgängliga innehav. Meningen identifierar händelse, nämnare och innehavsomfattning som kan kontrolleras senare.
Identifiera källomfattningen utan att hitta på en ägare
En bevakad adress är en observationsomfattning, inte nödvändigtvis en hel ekonomisk portfölj eller verifierad person. Källan kan använda andra adresser, ha exponering utanför kedjan eller flytta tillgångar av skäl observatören inte kan klassificera. En speglingsregel måste fungera med begränsningarna i stället för att se ett synligt saldo som fullständig kunskap om källans ekonomiska avsikter.
På Solana beskriver dokumentationen om signaturhistorik transaktioner som refererar till en angiven adress. Applikationen måste fortfarande tolka relevanta tokenkonton och transaktionssammanhang. Returnerad historik fastställer inte automatiskt alla konton under samma aktör eller varje affär som påverkar dess ekonomiska position.
Definiera vilka adresser och vilka tillgångsrörelser inom täckningen som hör till källomfattningen. Om omfattningen senare ändras ska versionen bevaras och det förklaras om följaren bör ompröva befintliga mål. En tillagd bevakad adress kan ge dubblettobservationer eller öka skenbart källinnehav. Det bör inte tyst auktorisera en utökad följarportfölj enligt en policy för en snävare observationsmängd.
Klassificera den ekonomiska händelsen före skalning
En överföring är inte automatiskt ett köp och en tokenkontodebitering inte automatiskt försäljning. Klassificeraren behöver en tolkning som stöds av transaktionen och flyttade tillgångar. Annars kan skalningen vara numeriskt korrekt men gälla fel händelsetyp. Tio procent av en felklassificerad överföring är fortfarande en omotiverad handelsinstruktion.
Håll rå transaktionsreferens, tolkad ekonomisk händelse och klassificeringstilltro tillsammans. En flerstegsväg kan ha flera tokenrörelser men vara ett enda byte. Dubblettkontroll bör bevara legitima skilda händelser men undvika flera följarförsäljningar eller följarköp för mellanrörelser i samma byte. Aktivitet som inte stöds kan förbli forskningsdata utan att bli körbart underlag.
Guiden till plånboksspårning utvecklar skillnaden mellan belägg och tolkning. I ett speglingssystem skyddar skillnaden auktoriseringsgränsen. En klassificeraruppdatering kan ändra forskningshistorik men bör inte i efterhand skapa en ny realtidssignal från en gammal transaktion utan ett nytt policybeslut utifrån aktuella villkor.
Skalningsregler för automatisk plånboksspegling behöver enheter
En fast mängdmultiplikator, ett fast utgiftsbelopp och en procent-av-position-regel har olika enheter. Källans tokenmängd multiplicerad med 0,1 ger en måltokenmängd. En fördelning på 50 redovisningsenheter ger en utgiftsbudget vars tokenmottagande beror på aktuell offert. Att sälja hälften av följarens position använder dess eget innehav, inte källans ursprungsbelopp.
För ett fiktivt källköp på 10 000 token föreslår en mängdregel på 10 % 1 000 följartoken. Om följaren i stället har en budget på 50 enheter och aktuell offert som stöds ger 800 token skiljer sig förslagen. Styrningen bör inte kalla dem likvärdiga bara för att båda ska följa samma källhändelse.
Skalning behöver också tak och praktiska minimum. Ett proportionellt resultat kan överskrida tillgängliga medel eller skapa en minimal order vars fasta kostnader dominerar värdet. Tillämpa följarens konto- och tillgångsgränser före auktorisering. Registrera om förslaget begränsades, avrundades eller avvisades så att senare granskning förklarar varför följarinnehavet avvek från källhärledd mängd.
Avgör vad som händer när följandet börjar mitt i en position
En källa kan redan ha ett stort tokensaldo när spårningen börjar. Följaren kan börja utan position och bara agera på framtida kvalificerande händelser, upprätta uttryckligen auktoriserat startmål eller förbli i observationsläge. Det är olika policyer. Att läggas till på bevakningslistan bör inte tyst utlösa köp av hela källans skalade innehav.
Okänd anskaffningshistorik för källan komplicerar beslutet. Synligt innehav kan komma från överföringar eller tidigare köp utanför tillgängliga poster. En följare som köper nu möter aktuellt pris och likviditet oavsett hur attraktivt antaget historiskt anskaffningsvärde ser ut. Bevara okänt anskaffningsvärde i stället för att behandla startinnehavet som en bevisat lyckad affär.
I ett fiktivt fall börjar källan med en miljon token och köper senare ytterligare 20 000. En mängdregel på 1 % för enbart framtida händelser ger ett nytt förslag på 200 token. En målpositionsregel på 1 % ger efter köpet ett mål på 10 200 token före följarspecifika begränsningar. Den stora skillnaden kommer från angiven startpolicy, inte en implementationsdetalj som tryggt kan lämnas ospecificerad.
Gör målskillnaden till en beständig avsikt
Beräkna för positionsbaserad spegling önskat innehav, dra av bekräftat innehav och ta hänsyn till väntande auktoriserade ändringar. Resultatet är en kandidatjustering, inte automatiskt en affär. Den behöver fortfarande färsk offert, tillgångsbeteende som stöds och tillgängliga resurser. Målet kan förbli tillfälligt ouppfyllt när villkoren inte håller.
Anta ett fiktivt mål på 1 000 token. Följaren håller 600 och har ett köp med oklar status avsett att lägga till 250. Återstående obunden skillnad är 150, inte 400, med angivna mängdantaganden. Om det väntande köpet ignoreras kan kontot överskrida målet om båda försöken slutförs. Bevara osäkerhet när slutligt mottagande är begränsat snarare än exakt.
Registrera avsikten innan arbete med möjliga externa effekter skickas ut. Identifieraren bör länka källhändelse eller målberäkning, policyversion, godkänd mängd och konto. En andra arbetare som möter samma beslut bör hitta posten och dess aktuella tillstånd. Beständig avsikt möjliggör återställning utan antagandet att varje begäran och svar kommer exakt en gång.
Skilj dubblettmeddelanden från dubbla beslut
En källhändelse kan levereras genom flera flöden eller upprepas efter återanslutning. Transportmeddelandets identifierare kan ändras trots identisk underliggande transaktion. Använd stabil ekonomisk händelseidentitet och tolkningsomfattning som stöds för dubblettkontroll. Slå samtidigt inte ihop två legitima affärer bara för att de gäller samma token och liknande mängder.
Beslutsidentitet omfattar också policysammanhang. En gammal händelse bedömd enligt en tidigare regel bör inte automatiskt bli ny affär vid varje konfigurationsändring. Avsiktlig omprövning kan vara lämplig men måste registreras som nytt aktuellt beslut med aktuella offerter och gränser. Det hindrar rutinunderhåll från att bli en oavsiktlig historisk ikappmotor.
Ett fiktivt flöde skickar samma köp som stöds tre gånger. Första meddelandet skapar en kandidat och en auktoriserad avsikt. Senare meddelanden uppdaterar leveransbelägg eller bekräftar befintligt arbete; de förbrukar inte ytterligare fördelning var för sig. Ett återspelningstest bör verifiera beteendet över processomstarter, inte bara medan en praktisk mängd med redan sedda händelser i minnet är intakt.
Reservera innehav för speglade minskningar
En källminskning bör översättas till följarminskning enligt vald regel och aktuellt tillgängligt innehav. Källans råa sålda mängd kan sakna samband med följarinnehavet efter tidigare tak eller överhoppade köp. Blind skalning från ursprunglig källmängd kan begära större försäljning än följaren äger eller mindre än avsedd procentuell minskning.
I ett fiktivt exempel säljer källan hälften av sin observerade position på 10 000 token. Följaren håller bara 600 efter ett tidigare begränsat köp. En regel som speglar minskningsprocenten som stöds föreslår försäljning av 300 följartoken. En separat fast regel på 10 % av källmängden föreslår 500. Båda räkneresultaten är möjliga men bara ett matchar operatörens valda policy.
Reservera godkänd säljmängd medan försöket har oklar status. En andra källförsäljning eller ett lokalt stoppvillkor måste se reservationen. Spegling och oberoende riskförsäljningar delar samma innehav även med olika skäl. Guiden till automatisk säljlivscykel förklarar hur samordnad mängdkontroll hindrar överlappande instruktioner från att agera på samma enheter.
Skilj partiella orderavslut från delvis slutförd strategi
Genomförandemekanismer skiljer sig åt. En orderbokorder som stöds kan fyllas delvis och lämna en aktiv rest medan ett enskilt atomärt byte som stöds antingen genomför sina auktoriserade tillståndsändringar eller misslyckas. En strategi av flera separata byten kan ändå bara slutföra vissa planerade delar. Använd rätt tolkning för faktisk handelsplats i stället för att kalla varje ofullständigt mål ett partiellt transaktionsavslut.
I ett fiktivt orderexempel söker en avsikt 1 000 token, får 600 och har en aktiv rest på 400. Styrningen registrerar fyllt innehav och återstående åtagande. Avbokad rest raderar inte anskaffningen på 600 token. En senare ersättning bör beakta faktiskt aktuellt mål och färska villkor, inte automatiskt begära ytterligare hela 1 000.
I ett separat flertransaktionsexempel planeras tre oberoende köp på 200 token och bara två slutförs. Strategin anskaffade 400 även om varje slutförd transaktion var atomär för sig. Ofullständighet på gruppnivå och atomicitet på transaktionsnivå är olika egenskaper. Skillnaden håller innehavshuvudboken korrekt över handelsplatstyper och hindrar återställning från att anta en allt-eller-inget-garanti som arbetsflödet aldrig gav.
Behandla en överskriden tidsgräns som en extern effekt med oklar status
Att tidsgränsen för en lokal begäran löper ut fastställer inte att fjärråtgärden misslyckades. Transaktionen kan ha accepterats eller genomförts innan svaret förlorades. Arbetsflödet bör behålla extern referens och reserverade resurser medan det söker belägg. Ett nytt oberoende köp bara för att ursprungssvaret saknas kan dubblera exponering.
På Solana skiljer referensen för transaktionssändning RPC-acceptans från nätverksbehandling eller bekräftelse. Styrningen måste följa ursprungstransaktionen genom lämpliga status- och kontobelägg. Den bör också skilja omsändning av samma signerade transaktion från att konstruera en ny med ny identitet och potentiellt separat genomförandeeffekt.
Relevant återställningspolicy beror på nätverk och åtgärd som stöds. En universell försök-tills-det-lyckas-loop räcker inte. Definiera vilka belägg som fastställer slutförande, definitivt misslyckande eller förlorad giltighet och vilken ny auktorisering som krävs därefter. Avsikten förblir den beständiga förklaringen av vad följaren ville medan varje faktiskt externt försök behåller egen livscykel och kostnadspost.
Omstartsåterställning för automatisk plånboksspegling börjar med avstämning
Ladda efter omstart först beständiga avsikter, externa referenser med oklar status och kontoreservationer. Jämför dem sedan med aktuella transaktions- och saldobelägg inom täckningen. Först efter återställd kontext bör styrningen auktorisera nytt källstyrt arbete. En nyss tom minnescache bevisar inte att kontot saknar väntande åtaganden.
Testa återställning efter den besvärliga gräns där en transaktion genomförs men lokal slutförandepost ännu inte sparats. Den omstartade processen bör upptäcka befintligt utfall och markera avsikten slutförd. Den bör inte upprepa affären för att återskapa en lokal post. En redan slutförd avsikt bör likaså förbli slutförd när en dubblett av källhändelsen kommer senare.
Ett fiktivt system startar om med ett köp på 40 enheter med oklar status och en total kapacitetsgräns på 100 enheter. Tills ursprungsförsöket stämts av förblir högst 60 enheter obundna före andra innehav och kostnader. Om hela gränsen ses som tillgänglig efter omstart beror säkerhetsegenskapen på oavbruten drifttid. Beständiga reservationer bevarar kontoregeln genom avbrottet.
Stäm av manuella ändringar utan att gissa syftet
Följaren kan få token, sälja manuellt eller överföra tillgångar utanför automatflödet. Rörelserna kan ändra tillgänglig mängd och förhållandet till målet. Upptäck dem och tillämpa angiven policy. Anta inte att varje saldoskillnad är en saknad speglad affär som automatiskt bör rättas.
Om en positionsstyrning tolkar varje manuell försäljning som målavvikelse kan den omedelbart återköpa vad operatören avsiktligt tog bort. En tydlig paus- eller manuell justeringspolicy hindrar konflikten. Operatören bör kunna ändra mål, koppla loss positionen eller kräva granskning i stället för att slåss mot en osynlig process som återställer gammal fördelning.
För en fiktiv följare med 900 token mot ett mål på 1 000 lämnar en manuell överföring på 300 lokalt 600. Om styrningen föreslår ytterligare 400 beror på auktoriserad behandling av externa ändringar. Enbart matematiken avgör inte användarens avsikt. Bevara rörelse och policysvar så att resulterande kontotillstånd förblir förklarligt.
Hantera källvändningar och observationer i fel ordning
Ett fördröjt flöde kan rapportera ett tidigare köp efter att senare försäljning redan kommit via annan väg. Strikt behandling i ankomstordning kan skapa en följarföljd som aldrig matchar källkronologin. Bevara belägg om källordning och identifiera luckor innan policysvaret bestäms.
Ett positionsbaserat system kan vänta tills det kan fastställa ett godtagbart aktuellt källtillstånd och sedan bedöma målskillnad. Ett händelsebaserat system kan klassificera sen händelse som historisk och avstå från handel. Ingen metod bör automatiskt anta att varje fördröjt meddelande förblir aktuell möjlighet. Valt beteende bör ingå i regeln i stället för att improviseras under avbrott.
Anta att en fiktiv källa köper 1 000 token och strax därefter säljer 800. Följaren observerar först försäljningen och får sedan äldre köp. Blind kopiering i ankomstordning kan sälja före köp eller sluta med onödigt stort innehav. Rekonstruktion av kronologin som stöds visar observerad nettoökning på 200 men korrekt följaråtgärd beror fortfarande på vald händelse- eller positionsbetydelse och aktuella begränsningar.
Använd begränsad avvikelse i stället för ständig onödig ombalansering
Ett positionsmål kan skilja sig lite från faktiskt innehav genom avrundning, kostnader, partiella utfall eller små källändringar. Ombalansering av varje liten skillnad kan skapa överdriven omsättning. Definiera ett godtagbart avvikelseintervall i meningsfulla enheter och ange när skillnaden blir stor nog för ny bedömning.
I en fiktiv policy är målet 1 000 token och innehavet 995. En justering på fem token kan ha mindre ekonomiskt värde än genomförandekostnaden. Styrningen kan bevara skillnaden utan att låtsas att målet nåtts exakt. Om målet senare blir 1 300 kan större gap motivera nytt beslut enligt samma dokumenterade regler.
Ett avvikelseintervall är ett strategival, inte dold redovisningsrättelse. Rapportera faktisk mängd och mål separat. Avrunda inte visat innehav till målet för att sedan använda det avrundade värdet i senare säljberäkningar. Korrekt resttillstånd är avgörande när senare minskning, manuell överföring eller omstart beror på mängden kontot verkligen kontrollerar.
Verifiera invarianta regler genom en fullständig återställningsövning
Definiera några egenskaper som bör förbli sanna genom alla händelser. Slutförda källbeslut skapar inte dubbla avsikter. Möjlig exponering omfattar köp med oklar status. Reserverade säljmängder överskrider inte tillgänglighet som stöds. En återställd process bevarar samma kontogränser som en oavbruten. Egenskaperna hjälper mer än en demonstration av snabb kopiering av en okomplicerad affär.
Öva dubblettleverans, förlorat svar, delvis slutförande, manuell justering, källvändning och omstart efter genomförande före lokal bekräftelse. Ange förväntat innehav och reservationer efter varje steg. Ta med fall där rätt resultat är pausat eller oklart tillstånd snarare än omedelbar transaktion.
En bot för automatisk plånboksspegling är begriplig när dess källtolkning, skalningsregel och återställningsbeteende leder till samma avgränsade kontotillstånd vid upprepade observationer. Den kan inte göra en fördröjd följare identisk med källan eller garantera gynnsamma priser. Den kan bevara vad som auktoriserades, fastställa vad som faktiskt skedde och synliggöra återstående skillnad före nästa beslut.