En handelsalgoritme for Solana er enklere å forstå når én regel følges fra inngangsverdiene til den endelige kontoregistreringen. Brede beskrivelser som å kjøpe momentum eller automatisere salg lar for mye være uspesifisert. De nyttige detaljene gjelder hvilke observasjoner som går inn i regelen, når den avstår, hvordan et forslag autoriseres, og hvordan handlingen som følger, gjennomgås.

Artikkelen utvikler ett bevisst enkelt eksempel på posisjonsreduksjon. Det er verken en anbefalt strategi eller en påstand om lønnsomhet. Formålet er å vise en fullstendig spesifikasjon som leseren kan regne gjennom for hånd og sammenligne med en implementasjon.

Den fiktive regelen, som kalles R1 i artikkelen, overvåker en eksisterende tokenposisjon. Under definerte vilkår foreslår den å selge en fast del etter at et mengdespesifikt salgstilbud stiger relativt til et kort, fullført sammenligningsgrunnlag. Forslaget krever fortsatt separat kontoautorisasjon og fersk utførelsesdokumentasjon.

Et regneeksempel for en Solana-handelsalgoritme trenger et formål

Formålet med R1 er å produsere et forslag om delvis reduksjon som kan gjennomgås, for en posisjon arbeidsflyten allerede forvalter. Den verken oppdager nye tokener, utleder traderhensikt eller velger en full portefølje. Det avgrensede omfanget holder eksemplet rettet mot forholdet mellom observasjoner og én handlingstype.

Algoritmen bruker en fast tokenmint og en støttet markedstolkning. Den observerer pristilbud for å selge nøyaktig 100 tokener til en navngitt noteringseiendel. Hver sammenligning bruker samme retning og mengde. Et tilbud om å kjøpe 100 tokener eller selge en annen mengde går ikke inn i sammenligningsgrunnlaget som om det var likeverdig.

Den eldre veiledningen om arkitektur for Solana-handelsboter skiller observasjon, strategi, autorisering og avstemming. R1 følger grensene. En regelutløsning er en foreslått beslutning, mens kontoresultatet krever dokumentasjon fra de senere trinnene.

Spesifiser observasjonspakken

Hver observasjonspakke inneholder mintidentitet, noteringseiendel, mengden som skal brukes i byttet, forventet mottatt mengde, observasjonstid, kilde- eller ruteomfang og tolkningsstatus. Den oppgir også hvilke kostnader som allerede gjenspeiles i den mottatte mengden. Pakken bør lagres før den blir en inngangsverdi til regelen.

For R1 er den mottatte mengden et mengdespesifikt salgstilbud, ikke en generell tokenpris. Dette knytter sammenligningen nærmere til tiltenkt reduksjonsmengde og etterlater fortsatt utførelsesusikkerhet. Et pristilbud dokumenterer vilkår på et tidspunkt, men garanterer ikke et senere kontoresultat.

Pakken trenger et tydelig tilgjengelighetstidspunkt. Et pristilbud som hentes fra historikken etter beslutningsfristen, kan ikke gå inn i en ny avspilling som om det var kjent tidligere. Dokumentasjonssporet for én algoritme begynner med det systemet faktisk kunne undersøke da regelen ble kjørt.

Definer en fullført periode for sammenligningsgrunnlaget

R1 sammenligner det siste kvalifiserte tilbudet med gjennomsnittlig mottatt mengde fra tre foregående fullførte observasjoner som er valgt etter en fast tidsplan. Tidsplanen og ferskhetspraksisen inngår i regelversjonen. De velges ikke senere for å gjøre sammenligningsgrunnlaget gunstig.

Alle tre observasjonene i grunnlaget må oppfylle samme krav til identitet, mengde, retning og støtte. Hvis én mangler eller er ugyldig, avstår R1 i dette eksemplet. Den forkorter ikke grunnlaget i det stille eller erstatter den manglende verdien med det siste tilbudet.

En mer sammensatt algoritme kan bruke en annen beregning, men spesifikasjonen trenger samme tydelighet. Poenget er ikke at tre observasjoner utgjør en sterk prognosemodell. Poenget er at en liten, fast beregning gjør inngangsgrensen enkel å undersøke og viser hvordan manglende data endrer beslutningen.

Fastsett gjennomgangsrytmen for eksemplet

For denne spesifikasjonen tenker vi oss gjennomganger hvert femte minutt. En gjennomgang 10:00 bruker de registrerte tilbudspakkene fra 09:45, 09:50 og 09:55 som grunnlag, pluss et separat siste tilbud for gjeldende gjennomgang. Hver pakke må ha oppfylt en ferskhetsgrense på ett minutt da den ble godtatt ved sitt eget gjennomgangstidspunkt; den siste pakken må fortsatt oppfylle grensen ved gjeldende beslutning.

Intervallene er illustrerende innstillinger, ikke anbefalte handelsfrekvenser. De gjør eksemplet mulig å gjenskape og hindrer at implementasjonen velger de tre historiske observasjonene som gir et beleilig grunnlag. Hvis en planlagt pakke var utilgjengelig, gjelder R1s regel for manglende inngangsverdier fremfor å gå lenger tilbake uten en uttrykkelig versjonsendring.

Oppgi utløseren i klart språk

R1 foreslår en reduksjon når siste kvalifiserte mottatte mengde er minst 5 % over gjennomsnittet av de tre mengdene i sammenligningsgrunnlaget. Terskelen er bare valgt for illustrasjon. Likhet kvalifiserer etter regelen, og beregningen bruker uavrundede registrerte verdier før formatering for visning.

Vilkåret beskriver en relativ endring i innbetalingene som pristilbudet anslår for den samme mengden på 100 tokener. Det hevder verken at hele posisjonen kan selges til den underforståtte satsen, eller at videre prisbevegelse er forutsigbar. Det ville være andre spørsmål som krever annen dokumentasjon.

Veiledningen om handelssignaler på Solana forklarer hvorfor en oppdagelse eller prognose ikke automatisk er et økonomisk fortrinn. R1s utløser er ganske enkelt en definert kobling fra hendelse til forslag. Nytten krever en separat vurdering av utfall, kostnader og den alternative atferden den erstatter.

Beregn utløseren for hånd

Anta at de fiktive mottatte mengdene i grunnlaget er femti, femtito og femtien noteringsenheter. Gjennomsnittet er femtien. Siste mottatte mengde er femtifire. Den relative økningen er tre delt på femtien, omtrent 5,88 %, så den tallfestede utløseren er oppfylt ved R1s terskel på 5 %.

Beregningen bør lagres med inngangsidentifikatorene. En gransker kan da gjenskape den uten den gjeldende markedssiden. Hvis en inngangsverdi senere rettes, bør den opprinnelige beslutningen bevares, og forskjellen i den rettede beregningen registreres fremfor å skrive om det tidligere resultatet i det stille.

Regnestykket beviser ikke at det foreslåtte salget er gunstig. Det fastslår bare at de registrerte observasjonene oppfyller den spesifiserte utløseren. Neste trinn kontrollerer om posisjonen finnes, mengden er tilgjengelig, pristilbudet fortsatt er gjeldende og handlingen passer kontopraksisen.

Regelgjennomgang for Solana-handelsalgoritmen omfatter kvalifisering

R1 opererer bare på en forvaltet posisjon med minst 300 tilgjengelige tokener før den foreslåtte reduksjonen på 100 tokener. Eksemplet etterlater dermed minst 200 tokener etter en vellykket reduksjon. Mengderegelen er illustrerende og tilhører strategidefinisjonen, ikke en universell størrelsesanbefaling.

Regelen krever også støttet token- og markedstolkning, et komplett grunnlag, en fersk siste observasjon og ingen uavklart reduksjonshensikt som reserverer samme beholdning. Hvis et krav ikke oppfylles, angir resultatet begrunnelsen for å avstå fremfor å returnere en misvisende nullskår.

Regelgjennomgang for en Solana-handelsalgoritme bør verifisere kravene før terskelberegningen undersøkes. Et matematisk riktig resultat på 5,88 % kan ikke kompensere for feil mint, foreldet dokumentasjon eller utilgjengelig beholdning. Kvalifisering avgjør om beregningen er meningsfull for den tiltenkte handlingen.

Hold forslaget innenfor fullmaktsgrensen

Når R1 utløses, oppretter den et forslag om å redusere posisjonen med 100 tokener. Forslaget inneholder regelversjon, dokumentasjonsreferanser, mengde, gjeldende tilbudskontekst og utløp. Det verken signerer eller sender inn en transaksjon på egen hånd.

Et separat autorisasjonstrinn kontrollerer kontopraksis og gjeldende tilstand. Kontoen kan avvise forslaget fordi en annen handling har reservert beholdning, fullmakten er utilgjengelig eller foreslått rute faller utenfor omfanget. Avslaget er et gyldig utfall selv når R1s observasjonsregel var oppfylt.

Veiledningen om handelssystemer for Solana forklarer varig eierskap til registreringene. Å skille forslag fra autorisering lar en gransker skille at strategien avstår, fra et kontoavslag. Utfallene tilsier forskjellige forbedringer og bør ikke slås sammen til en generell telling av tilfeller uten handel.

Kontroller pristilbudet på nytt før et forsøk

Pristilbudet som utløste R1, kan utløpe før handlingen er klar for innsending. Arbeidsflyten bør hente gjeldende dokumentasjon og bruke en angitt praksis for vesentlige endringer. En gammel utløser fastslår ikke at den opprinnelig observerte mottatte mengden fortsatt er tilgjengelig.

Hvis det nye tilbudet ikke lenger oppfyller forslagets vilkår, kan handlingen avvises eller sendes tilbake til ny vurdering. Praksisen bør forklare om det opprinnelige utløservilkåret fortsatt må gjelde, eller om en separat autorisert utførelsesgrense styrer forsøket. Eksemplet overlater ikke valget til en vilkårlig beslutning i arbeidsprosessen.

Bevar tilbudet som utløste regelen, og det senere utførelsestilbudet separat. Forskjellen er nyttig dokumentasjon om forsinkelse og gjennomførbarhet. Å erstatte det opprinnelige tilbudet med det senere ville gjøre det vanskeligere å forklare hvorfor algoritmen i det hele tatt ble utløst.

Reserver beholdning for den autoriserte reduksjonen

Anta at kontoen har 500 tilgjengelige tokener når forslaget på 100 tokener autoriseres. Arbeidsflyten reserverer den foreslåtte mengden slik at en annen salgsregel ikke uavhengig kan anta at alle 500 fortsatt er tilgjengelige. Hvis handlingen fullføres som tiltenkt, gjenstår 400 tokener før andre kontoendringer tas med.

Reservasjonen består gjennom forsøksperioden med uavklart utfall etter avstemmingspraksisen. Den kan frigjøres når et forslag som ikke er sendt inn, utløper, eller når underbygget dokumentasjon fastslår et utfall som tillater frigivelse. Tidsplanleggeren bør ikke frigjøre den bare fordi et annet intervall begynner.

Den eldre veiledningen om samordning av gevinstsikring og tapsstopp på Solana drøfter konkurrerende salgsvilkår. R1 er én mulig kilde til et reduksjonsforslag. Implementasjonen må samarbeide med hver annen kilde gjennom den felles posisjonsregistreringen fremfor å forvalte beholdning isolert.

Registrer innsending som et forsøk

Utførelseskomponenten registrerer den autoriserte hensikten og transaksjonsforsøket som følger. Den bevarer identiteten og tidspunktene som trengs for å følge utfallet. Et vellykket innsendingssvar er ikke i seg selv et avstemt salg; Solanas sendTransaction-dokumentasjon gjør skillet uttrykkelig. Solanas innsendingsdokumentasjon.

Hvis svaret er usikkert, bør arbeidsflyten undersøke det eksisterende forsøket. Den bør ikke kjøre R1 på nytt og opprette en ny salgshensikt bare fordi den tidligere forespørselen ikke returnerte en beleilig endelig status. Det opprinnelige forslaget og den reserverte beholdningen inngår fortsatt i kontotilstanden.

Skillet forbedrer også undersøkelser. Et utløst forslag, et autorisert forslag og en fullført reduksjon er forskjellige tellinger. Algoritmens driftsmessige gjennomførbarhet kan bare vurderes når registreringen bevarer overgangene og begrunnelsene for at noen forslag aldri blir kontoendringer.

Avstem posisjonen etter utfallet

Når transaksjonsutfallet er fastslått etter valgt praksis, bør kontovirkningen sammenlignes med hensikten. Registrer redusert mengde, innbetalinger, kostnader og gjenværende forvaltet beholdning. Hvis resultatet avviker fra forventningen, bør avviket bevares og avklares før avhengige handlinger antar en ryddig tilstand.

Posisjonen bør ikke merkes som fullt lukket etter en reduksjon på 100 tokener fra 500. Den forblir åpen med avstemt mengde. En status for fullført forsøk og en status for lukket posisjon beskriver forskjellige objekter og bør forbli adskilt i grensesnittet og eksporten.

Gjenværende posisjon påvirker også neste R1-vurdering. Regelen bør bruke gjeldende tilgjengelig beholdning, inkludert andre reservasjoner og eksterne endringer. Å kopiere den opprinnelige mengden på 500 tokener inn i hvert fremtidig forslag ville bryte nettopp kvalifiseringsvilkåret spesifikasjonen fastsatte.

Definer når regelen kan utløses igjen

Uten en praksis for ny aktivering kan R1 gi enda en reduksjon hver gang den observerer samme vedvarende vilkår. Avgjør om algoritmen tillater gjentatte reduksjoner, venter til vilkåret avsluttes eller krever en ny episode med sammenligningsgrunnlag før et nytt forslag kan åpnes.

I denne illustrerende spesifikasjonen kan én utløserepisode bare ha én åpen reduksjonshensikt. Etter at hensikten er avklart, krever R1 en fersk, komplett gjennomgang der siste mottatte mengde ikke er mer enn 2 % over det kvalifiserte grunnlaget, før en ny episode kan begynne. Tilbakestillingen avslutter det gamle vilkåret; en senere gjennomgang må oppfylle åpningsterskelen på 5 % igjen for å opprette en ny episode. Beholdnings- og fullmaktskravene gjelder fortsatt uavhengig.

Dette hindrer at gjentatte observasjoner blir utilsiktede stabler av salgshensikter. Det definerer også undersøkelsesenheten: én episode har et åpningsvilkår, et forslagsutfall og en avslutning eller tilbakestilling. Varselantall og observasjonsantall kan da skilles fra antallet faktiske algoritmebeslutninger.

Definer når regelen kan utløses igjenTriggerAbstainRejectAttemptReconcileTRADING FIELD NOTESEDUCATIONAL RESOURCE
Utløs → Avstå → Avvis → Forsøk → Avstem. Følg én illustrerende algoritme for posisjonsreduksjon fra mengdespesifikke observasjoner gjennom en fast regel, autorisering, forsøk og dokumentasjonsbasert gjennomgang.

Prøv et tilfelle med ufullstendig grunnlag

Fjern den midterste observasjonen i grunnlaget mens siste mottatte mengde fortsatt er femtifire. Etter R1 er forventet resultat at den avstår fordi det nødvendige grunnlaget på tre observasjoner er ufullstendig. Systemet bør ikke beregne gjennomsnittet av femti og femtien og hevde at den opprinnelige regelen fortsatt ble kjørt.

Registreringen bør navngi den manglende inngangsverdien og bevare siste gyldige observasjon for senere undersøkelser. Når den manglende observasjonen kommer, kan systemet rekonstruere den tidligere beregningen, men dette er et tilbakeblikkende resultat. Det blir ikke et signal som var tilgjengelig i sanntid ved det opprinnelige beslutningstidspunktet.

Tilfellet prøver informasjonsgrensen fremfor regningen. Et program kan beregne et gjennomsnitt riktig og samtidig bryte regelen ved å bruke et ufullstendig eller sent datasett. Meningsfull validering kontrollerer at inngangsverdiene var kvalifiserte før tallresultatet kontrolleres.

Prøv foreldet tilbud og endret beholdning

Bevar deretter et komplett grunnlag, men gjør siste pristilbud eldre enn R1s ferskhetsgrense. Forventet resultat er at regelen avstår eller at forslaget utløper, avhengig av trinnet. En skjerm som nylig er tegnet opp, bør ikke fornye alderen til det underliggende pristilbudet.

Gjenopprett så et ferskt tilbud mens tilgjengelig beholdning reduseres under 300 gjennom en kontrollert ekstern endring. Den tallfestede utløseren kan fortsatt gjelde, men posisjonen kvalifiserer ikke. Registreringen bør identifisere mengdevilkåret fremfor å late som signalet forsvant fordi markedet endret seg.

Tilfellene viser hvorfor observasjonsregler og kontotilstand må forbli sammenkoblet. Samme markedspakke kan produsere forskjellige tillatte utfall når beholdning eller fullmakt endres. Det er ikke inkonsekvens; det er tiltenkt atferd for en full algoritmearbeidsflyt med uttrykkelige forutsetninger.

Sammenlign R1 med et definert alternativ

For å vurdere nytten av R1 bør en sammenligningsatferd velges under samme konto-, observasjons- og kostnadsforutsetninger. Alternativet kan være en planlagt fast reduksjon eller ingen reduksjon før en senere forhåndserklært gjennomgang. Valget bør passe undersøkelsesspørsmålet og unngå etterpåklokskap.

Veiledningen om handelsalgoritmer for Solana utvikler rettferdige sammenligninger mellom regler. R1 bør ikke få gunstigere pristilbud, større budsjett eller en annen salgshorisont enn alternativet med mindre forskjellen uttrykkelig inngår i undersøkelsen.

Sammenligningen bør omfatte reduksjoner som ble foreslått, men ikke utført, gjenværende beholdning og kostnader. Å se bare på fullførte reduksjoner kan skjule tilfellene der regelen ble utløst, men handlingen ikke var gjennomførbar. Et komplett kontoforløp er mer opplysende enn en samling isolerte suksesseksempler.

Frys regelen før en senere gjennomgang

Den endelige R1-spesifikasjonen omfatter univers, tilbudsmengde, valg av sammenligningsgrunnlag, terskel, kvalifisering, utløp, ny aktivering, overlevering til autorisering og resultatføring. Frys hele definisjonen før en senere vurderingsperiode undersøkes. Å endre bare én skjult forutsetning kan endre resultatet vesentlig.

Den eldre veiledningen om undersøkelsesarbeidsflyt for Solana forklarer hvorfor tidsfrister og faste regler betyr noe. Hvis den senere perioden avdekker en feil eller et lite tiltalende resultat, bør revisjonen dokumenteres som R2 med angivelse av dokumentasjonen som ble brukt til å velge den.

En regel som revideres etter at en vurderingsperiode er undersøkt, bør ikke beholde en påstand om at samme periode uavhengig validerte den reviderte versjonen. Registreringen kan fortsatt være verdifull utviklingsdokumentasjon. Ærlig versjonering bevarer det undersøkelsen lærte, uten å få den endelige regelen til å fremstå som valgt på forhånd.

Del resultatgjennomgangen i trinn

Gjennomgå om R1 mottok komplett dokumentasjon, beregnet utløseren riktig, produserte tiltenkt forslag, passerte autorisering, nådde et fastslått forsøksutfall og avstemte posisjonen. Feil på hvert trinn betyr noe forskjellig. En riktig formel fastslår ikke en riktig full arbeidsflyt.

Vurder deretter det økonomiske spørsmålet separat: hva endret reduksjonen sammenlignet med det definerte alternativet, etter kostnader og under samme kontoforløp? Svaret kan være gunstig, ugunstig eller uavklart. At algoritmen er tolkbar, garanterer ikke verdien.

En nyttig rapport kan derfor si at implementasjonen samsvarte med spesifikasjonen mens strategien ikke nådde undersøkelsesmålet. Den kan også identifisere en driftsfeil før en økonomisk påstand fremmes. Å holde konklusjonene adskilt retter forbedringer mot trinnet dokumentasjonen faktisk peker på.

Bevar et fullstendig eksempel for fremtidige endringer

Bevar tilbudssekvensen femti, femtito, femtien og femtifire med forventet beregning på 5,88 % og de tilknyttede kvalifiseringstilfellene. Legg til forslag, autorisering, forsøk og avstemmingsregistreringer fra en kontrollert kjøring. Dette skaper en kompakt referanse for senere implementasjonsendringer.

Referansen bør omfatte utfall uten handling så vel som det vellykkede forløpet. Fremtidige versjoner kan kontrolleres mot tiltenkte forskjeller mens grensene som skal forbli stabile, bevares. En regresjonsgjennomgang er mest nyttig når den verifiserer meningsfull atferd fremfor bare å speile den nyeste implementasjonen.

En handelsalgoritme for Solana blir mulig å gjennomgå når hele kjeden er uttrykkelig. Én enkel regel kan vise disiplinen: observert dokumentasjon går inn i en fast beregning, kvalifisering begrenser bruken, fullmakt styrer handlingen, og kontoavstemming fastslår konsekvensen. Samme tydelighet forblir verdifull når den endelige algoritmen er mer sammensatt.

Fortsett å lære

Utforsk alle ressurser