Un bot di trading ERC-1155 richiede un registro delle quantità oltre a un identificativo dell’asset. Una posizione può contenere più unità di un tipo di token e una vendita proposta può riguardare soltanto parte di quella posizione. Trattare ogni registro NFT come un singolo oggetto indivisibile può quindi distorcere disponibilità, costi medi e impegni pendenti.
La difficoltà operativa è conservare il rapporto tra tipo di token, quantità, storia degli acquisti e stato degli ordini. Un conteggio di immagini della collezione non può dire quante unità rimangano dopo una cessione parziale. Analogamente, un saldo totale del wallet non rivela quanti oggetti siano già riservati per altre istruzioni.
Questa guida usa una collezione fittizia chiamata Lantern Editions e quantità e prezzi in ETH ipotetici. Spiega la progettazione di contabilità e controlli anziché l’implementazione di uno specifico marketplace. Ogni percorso di esecuzione effettivo richiede propri termini verificati, controlli sugli asset supportati ed evidenze dei cambiamenti risultanti nel conto.
Costruire il bot ERC-1155 attorno ai tipi di token
La specifica ufficiale ERC-1155 descrive un’interfaccia contrattuale che può gestire più tipi di token, con saldi associati a un conto e a un ID di token. Include trasferimenti singoli e in gruppo, interrogazioni dei saldi in gruppo e approvazioni per operatori. Queste capacità non determinano come un marketplace prezzi un’edizione o se un ordine specifico supporti l’esecuzione parziale.
Usa chain, contratto e ID di token come identità del tipo, poi conserva separatamente la quantità. Un ID di token non è la quantità detenuta. Mantenere distinti questi campi impedisce di interpretare un identificativo mostrato come importo e permette a più registri di acquisto di contribuire a un saldo attuale di un tipo.
Associa un’etichetta chiara dell’unità a ogni quantità. Una proposta per cinque unità di un’edizione non dovrebbe essere confusa con cinque tipi di token diversi o cinque ETH di potere d’acquisto. L’interfaccia può riassumere la posizione, ma il registro sottostante dovrebbe conservare dettagli sufficienti a ricostruire il trasferimento esatto previsto.
Il confronto con un bot di trading ERC-721 è utile perché espone una scelta importante del modello. Un software progettato attorno alla proprietà di oggetti individuali non dovrebbe riutilizzare tacitamente quell’ipotesi per registri dotati di quantità. Identifica lo standard supportato prima di importare gli asset nel registro di trading.
Separare quantità detenute, riservate e disponibili
Il saldo osservato risponde a quante unità possieda il conto secondo la sua politica di verifica. La quantità riservata indica quante unità siano impegnate nel flusso per intenzioni attive di vendita o trasferimento. La quantità disponibile è un calcolo di politica operativa che considera quegli impegni e ogni discrepanza irrisolta.
Supponi che un conto ipotetico possieda 12 unità di Lantern Edition 7. Un’istruzione attiva riserva quattro unità e un’altra azione irrisolta ne riguarda due. Secondo una politica prudente che riserva entrambe, restano disponibili soltanto sei unità per una nuova istruzione. Riportare tutte e 12 come liberamente disponibili ignorerebbe gli impegni già esistenti del flusso.
Documenta che cosa crei e rilasci una riserva. Creare una bozza potrebbe non meritare lo stesso trattamento dell’autorizzazione di un ordine eseguibile, ma la distinzione deve essere deliberata. Una richiesta di annullamento non dovrebbe liberare oggetti prima che il sistema abbia le evidenze richieste dalla progettazione effettiva dell’esecuzione.
Le regole di riserva delle quantità ERC-1155 dovrebbero persistere attraverso i riavvii. Se le riserve esistono soltanto in memoria, riavviare l’applicazione può far apparire di nuovo disponibili quantità già impegnate. Ricostruisci le riserve da registri persistenti di intenzioni ed esiti prima di permettere alla proposta successiva di usare il saldo.
Seguire i lotti di acquisto senza inventare numeri di serie fisici
Un lotto di acquisto registra quando e a quale costo il conto abbia ottenuto una quantità. È un registro contabile, non necessariamente un’affermazione che le singole unità abbiano identità seriali separate. Il registro può conservare la storia economica di più acquisti anche quando le unità condividono l’identità di un tipo di token.
A titolo illustrativo, supponi che il conto acquisti tre unità a 0.10 ETH ciascuna e poi due a 0.14 ETH ciascuna, prima delle spese. Il valore totale di acquisto è 0.58 ETH per cinque unità, con una media di 0.116 ETH per unità secondo una semplice convenzione di costo medio. I lotti originari dovrebbero restare disponibili anche se i rapporti mostrano quella media.
Scegli una convenzione coerente per la rendicontazione gestionale nell’assegnare il costo di acquisto alle cessioni. Convenzioni diverse possono produrre cifre diverse per singola vendita mentre il calcolo totale del conto resta riconciliabile. Non presentare il metodo scelto come trattamento fiscale universale; la guida riguarda l’analisi interna della strategia e la conservazione dei registri.
Conserva quantità e spese di ogni lotto, così che il calcolo possa essere modificato o verificato in seguito senza perdere le evidenze originarie. Ridurre ogni acquisto a una sola media sovrascritta rende difficile spiegare una discrepanza o indagare su quale episodio di acquisto abbia creato l’esposizione attuale.
Distinguere prezzo unitario e totale dell’ordine
Un’inserzione può esprimere condizioni in modi che richiedono un’interpretazione attenta. La proposta deve identificare se un importo mostrato si applichi a un’unità, a un gruppo di unità o a un ordine intero. Non dedurre mai questa distinzione soltanto dalla presenza di un’immagine NFT o di una breve etichetta del prezzo.
In un esempio ipotetico, un’offerta per acquistare sei unità per un totale di 0.48 ETH implica 0.08 ETH per unità prima delle spese. Un’offerta per sei unità a 0.48 ETH ciascuna implica 2.88 ETH prima delle spese. Gli stessi numeri producono esposizioni molto diverse quando l’unità di prezzo viene fraintesa.
Mostra sia l’importo unitario sia l’impegno totale nel registro di verifica. Includi asset di pagamento, quantità richiesta e costi attribuibili. Chi verifica dovrebbe poter riprodurre il totale con semplici calcoli prima di autorizzare l’azione.
Verifica questa distinzione con registri di esempio deliberatamente ambigui. Se l’importatore non sa determinare la base del prezzo, dovrebbe respingere o sottoporre la proposta a verifica anziché scegliere un’interpretazione conveniente. Un’edizione apparentemente economica può essere un acquisto costoso quando un campo di prezzo totale viene scambiato per un prezzo unitario o viceversa.
Gestire l’esecuzione parziale secondo l’ordine effettivo
Lo standard dei token da solo non stabilisce che un ordine possa essere eseguito parzialmente. Esamina percorso di esecuzione e termini dell’ordine. Quando l’esecuzione parziale è supportata, il registro del conto dovrebbe distinguere quantità richiesta, quantità eseguita, quantità restante attiva e quantità annullata o scaduta.
Supponi che un ordine ipotetico richieda 10 unità e il risultato verificato stabilisca quattro unità acquistate. Il registro delle quantità detenute aumenta di quattro, mentre le sei restanti dipendono dallo stato effettivo dell’ordine. Contarne 10 come detenute inventa disponibilità; contare come concluso l’intero ordine può far dimenticare un impegno residuo.
La contabilità delle esecuzioni parziali ERC-1155 dovrebbe collegare ogni esecuzione all’intenzione originaria senza sovrascrivere quelle precedenti. Se arrivano tre unità e poi due, il registro dovrebbe mostrare entrambi gli eventi e il totale cumulativo di cinque. Quella storia aiuta a spiegare spese e differenze temporali durante l’acquisto.
Usa la stessa disciplina per le vendite. Una cessione parziale riduce la quantità detenuta dell’importo verificato e chiude la parte corrispondente della posizione contabile. Le unità restanti conservano esposizione e registro dei costi propri. Un’etichetta di vendita non dovrebbe mai implicare che l’intera posizione nell’edizione sia scomparsa se le evidenze quantitative non lo supportano.
Conservare gli abbinamenti nelle operazioni in gruppo
Quando un’azione proposta contiene più tipi di token, conserva l’abbinamento tra ogni identificativo e la sua quantità. Una schermata che elenca tutti gli identificativi da una parte e tutti gli importi altrove può rendere difficile notare una discrepanza. Mostra ogni coppia come un’unità semantica anche se l’interfaccia sottostante usa array.
Per un gruppo fittizio, le coppie previste potrebbero essere Edition 7 con tre unità, Edition 12 con un’unità ed Edition 19 con sei unità. Scambiare due quantità cambia l’azione anche se l’insieme degli identificativi e quello dei numeri restano uguali. La validazione deve controllare i rapporti, non soltanto la presenza dei valori.
Definisci come il flusso rappresenti un tentativo in gruppo e il suo esito verificato. Non presumere che il raggruppamento dell’esecuzione del marketplace sia identico a quello dell’interfaccia di trasferimento dei token. Il conto dovrebbe usare le evidenze del percorso effettivo per determinare quali cambiamenti previsti siano avvenuti.
Una verifica di trasferimento ERC-1155 in gruppo dovrebbe anche identificare destinatario ed esposizione economica totale. Un’operazione in gruppo può semplificare l’attività aumentando però le conseguenze di una destinazione o associazione di quantità sbagliata. La comodità non elimina la necessità di esaminare ogni componente sostanzialmente diversa della proposta.
Ripartire trasparentemente le spese condivise
Un’operazione combinata può sostenere una spesa che non arriva con una ripartizione separata per tipo. Il registro richiede una convenzione esplicita di ripartizione per l’analisi interna conservando il totale effettivo. Ripartizione uguale per unità, per valore di acquisto e attribuzione diretta dove disponibile rispondono a domande di rendicontazione diverse.
Considera un acquisto ipotetico di due tipi con valori di 0.20 e 0.80 ETH e una spesa condivisa di 0.05 ETH. Ripartirla per valore di acquisto assegna rispettivamente 0.01 e 0.04 ETH. Dividerla ugualmente tra tipi assegna 0.025 ETH a ciascuno. Nessuno dei calcoli cambia l’esborso totale di 1.05 ETH, ma i rapporti dei risultati per tipo differiscono.
Scegli la convenzione prima di confrontare le strategie, documentala e applicala coerentemente. Cambiare metodo per migliorare l’apparenza di una posizione perdente rende fuorviante l’analisi anche se il totale del conto continua a tornare. Conserva dati grezzi sufficienti a ricalcolare i rapporti secondo un’altra convenzione ragionevole.
Mantieni visibili anche le spese dei tentativi falliti. Se un acquisto tentato non produce quantità detenute ma comporta costi, il progetto ha comunque speso risorse. Un rapporto limitato ai lotti riusciti sottostima l’onere operativo e può far sembrare economicamente innocui frequenti tentativi falliti.
Modellare la capacità di uscita per la quantità prevista
Un prezzo per un’unità non dimostra che una quantità maggiore possa essere venduta alle stesse condizioni medie. Il flusso dovrebbe valutare dimensione della cessione prevista e interesse disponibile degli acquirenti pertinente. Una piccola quotazione interessante potrebbe descrivere soltanto una frazione della posizione del conto.
Supponi che il conto possieda 20 unità ipotetiche. Gli acquirenti offrono attualmente 0.10 ETH per le prime due unità, 0.08 ETH per le successive tre e nessuna condizione verificata per il resto. Valutare tutte e 20 a 0.10 ETH presume una domanda non mostrata dalle evidenze. Il registro dovrebbe distinguere il ricavato supportato dal residuo irrisolto.
Usa più scenari di recupero per rendicontare le quantità detenute. Un modello può mostrare il risultato di vendere rapidamente una piccola quantità, venderne di più a condizioni meno favorevoli o mantenere più a lungo unità invendute. Sono scenari, non promesse sulla liquidità futura.
La concentrazione quantitativa conta anche quando il prezzo unitario sembra modesto. Acquistare ripetutamente la stessa edizione può vincolare molto capitale a un solo gruppo di acquirenti. Un limite per ordine dovrebbe quindi essere affiancato da un limite totale, per tipo, a quantità detenute e impegni.
Tenere separato il registro dei permessi del bot ERC-1155
L’approvazione per operatore nello standard ha un ambito più ampio di una singola operazione descritta localmente. Il flusso dovrebbe mostrare contratto pertinente e soggetto autorizzato e spiegare il rapporto tra quell’autorità e l’azione prevista. Un prezzo interessante non è un motivo per saltare la verifica dei permessi.
Conserva le osservazioni dei permessi separatamente dallo stato degli ordini. Un ordine può scadere mentre l’autorità rimane, e disabilitare la strategia non descrive di per sé lo stato dei permessi. Il processo di verifica del conto dovrebbe rendere visibili queste distinzioni alla persona responsabile del wallet.
Se cambia il percorso di esecuzione, rivaluta l’autorità richiesta. Non presumere che un permesso osservato precedentemente si applichi appropriatamente soltanto perché il nuovo percorso ha uno scopo simile. Identificativi verificati e requisiti attuali dovrebbero governare la decisione.
La discussione più ampia sul mandato in un agente di trading NFT spiega perché pianificazione e autorità richiedano controlli separati. Un agente attento alle quantità può proporre azioni utili sugli oggetti detenuti, ma il permesso di eseguirle dovrebbe restare circoscritto da regole esplicite su asset, importi e operatività.
Riconciliare trasferimenti esterni e cambiamenti inattesi dei saldi
La storia degli ordini del bot potrebbe non spiegare ogni movimento del conto. Una persona può usare un’altra interfaccia, un altro flusso autorizzato può agire o un asset può arrivare fuori dal processo di acquisto previsto. Il registro dovrebbe rilevare il saldo cambiato e indagarne l’origine anziché forzarlo nell’operazione nota più vicina.
Classifica un movimento come acquisto, cessione, trasferimento di custodia o evento irrisolto soltanto quando le evidenze supportano tale classificazione. Una quantità in ingresso non è automaticamente un acquisto al prezzo attuale di mercato. Una quantità in uscita non è automaticamente una vendita con ricavato pari a una quotazione mostrata.
Conserva l’osservazione originaria e la spiegazione successiva. Se una discrepanza di saldo viene risolta dopo la verifica, aggiungi le evidenze di supporto anziché sostituire tacitamente il registro. Questo rende utile la storia del conto per diagnosticare problemi ricorrenti nella raccolta dei dati o nel coordinamento degli operatori.
Metti in pausa nuove azioni sul tipo contestato quando la discrepanza incide sulla quantità disponibile. Continuare a riservare o vendere unità da un saldo incerto può creare impegni conflittuali. Il monitoraggio indipendente può continuare mentre le quantità interessate restano sotto verifica.
Verificare i calcoli quantitativi ai confini
Usa esempi piccoli e ispezionabili prima di aumentare il numero di tipi o unità. Includi quantità disponibile zero, importo superiore al saldo verificato, ordine eseguito parzialmente e due proposte simultanee che competono per le stesse unità. Ogni caso verifica un’ipotesi diversa del modello delle riserve.
Verifica come gli importi vengono interpretati e conservati. Una quantità non dovrebbe essere arrotondata tacitamente in un importo autorizzato diverso. Se il percorso o l’asset richiede un’unità intera e la proposta contiene una frazione non supportata, respingila esplicitamente anziché indovinare l’intento dell’utente.
Un principiante può affrontare questi casi insieme a un esercizio su un bot NFT per principianti. Lo scopo è rendere visibili i cambiamenti di stato con numeri semplici, così che l’operatore sappia spiegare perché la disponibilità sia cambiata dopo ogni evento.
Conserva gli esempi come insieme di regressione per modifiche successive. Un nuovo componente di visualizzazione o importatore può introdurre errori quantitativi anche quando il codice di esecuzione resta invariato. Il test dovrebbe verificare i rapporti significativi tra importi detenuti, riservati ed eseguiti, non soltanto confermare che un pulsante appaia ancora.
Chiudere la sessione con una riconciliazione di quantità e denaro
Per ogni tipo, collega quantità iniziale, ingressi verificati, uscite verificate e quantità finale. Poi riconcilia movimenti di pagamento e spese associati. Queste due prospettive rispondono a domande diverse e dovrebbero concordare con le azioni registrate senza essere ridotte a un’unica stima di valore netto.
Indaga sulle differenze prima di iniziare un’altra sessione. Una piccola discrepanza può indicare un’esecuzione duplicata, un trasferimento non registrato o un errore di interpretazione. Riportarla ripetutamente in avanti rende più difficile la riconciliazione successiva perché ogni nuova azione dipende da un saldo iniziale già incerto.
Conserva le quantità invendute separatamente dai risultati realizzati. Una valutazione ipotetica assegnata alle unità restanti non è denaro recuperato. I rapporti dovrebbero spiegare quanto del valore apparente della strategia dipenda da una stima per asset che richiedono ancora acquirenti.
La nota finale della sessione dovrebbe identificare ordini irrisolti, quantità riservate ed eventuali modifiche dei permessi ancora pertinenti. Un ciclo di trading quieto non è uno stato completo del conto. L’operatore ha bisogno di informazioni sufficienti a riavviare coerentemente senza riscoprire che cosa intendesse fare la sessione precedente.
Domande frequenti sul trading di edizioni
Un ID di token significa sempre un’unità?
No. Il modello del conto deve conservare la quantità osservata associata al tipo di token. Trattare l’identificativo come possesso di un solo oggetto può rappresentare male disponibilità e capacità degli ordini. Usa la semantica effettiva di asset e percorso anziché dedurre la quantità dal modo in cui il marketplace mostra l’immagine.
Un’operazione in gruppo è sempre economicamente migliore?
Non necessariamente. Un’operazione in gruppo può cambiare spese di esecuzione e complessità operativa, ma il risultato dipende dal percorso effettivo e dai contenuti proposti. Confronta costi completi e conseguenze di un’azione fallita o sbagliata. La comodità da sola non dimostra un esito economico migliore.
Posso vendere tutto all’ultimo prezzo unitario?
Un prezzo unitario passato non dimostra domanda attuale per l’intera quantità detenuta. Esamina condizioni eseguibili per la quantità prevista e mantieni visibilmente incerto il ricavato non supportato. Grandi posizioni in edizioni possono richiedere un piano di uscita diverso da quello suggerito da una piccola transazione recente.
Qual è il primo controllo più importante?
Conferma che il flusso distingua tipo di token, quantità e base del prezzo. Poi verifica che importi detenuti e riservati si riconcilino dopo un esito parziale. Questi fondamenti rendono significativa l’analisi successiva di costi e quantità detenute. Una valutazione sofisticata non può riparare un modello del conto che non sa quante unità controlli effettivamente.