Bot handlowy NFT potrzebuje dokładnego modelu rachunku przed większą listą obserwowanych kolekcji. Rachunek może zawierać posiadane przedmioty, podpisane oferty kupna, aktywne oferty sprzedaży i transakcje o nadal niepewnych wynikach. Zapisy opisują różne stany ekonomiczne. Łączenie ich w jedną liczbę zasobów czyni późniejsze decyzje niewiarygodnymi.
Projekt uwzględniający zasoby łączy każdą zamierzoną transakcję z tym, co rachunek nadal może nabyć lub sprzedać, a następnie z rzeczywistymi zmianami aktywów. Zachowuje dokładną tożsamość przedmiotu, ilość i koszt przez przejścia. Nowa okazja rynkowa jest oceniana względem bieżącego zapisu zamiast salda skopiowanego z wcześniejszego ekranu.
Przykłady używają fikcyjnych kolekcji, kwot w ETH i założonych kosztów. Opisują proces zamiast wdrożenia konkretnego protokołu. Rzeczywiste standardy tokenów, aktywa płatności i trasy platformy określają dowody i uprawnienia wymagane dla każdego działania.
Nadaj zasobom bota handlowego NFT precyzyjne znaczenie
Zasoby bota handlowego NFT to aktywa rzeczywiście posiadane według wybranej polityki weryfikacji rachunku. Nie są listą przedmiotów do zakupu, zbiorem podpisanych ofert ani grupą NFT niedawno wyświetlonych w wyszukiwaniu platformy.
Zapis powinien wskazywać łańcuch, identyfikator aktywa, standard, ilość i kontrolujący rachunek. Wyświetlana nazwa pomaga rozpoznawać przedmiot człowiekowi, lecz logika zasobów powinna używać identyfikatorów odróżniających roszczenia. Podobna grafika nie czyni dwóch tokenów zamiennymi.
Dołącz transakcję lub inne dowody ustalające zasób. Zachowuj też czas i stan łańcucha weryfikacji. Przy zmianie własności przez zewnętrzne działanie portfela zasoby muszą je odzwierciedlać mimo braku inicjatywy bota.
Definicja daje systemowi stabilne pytanie: jakie obecne zasoby rachunek może wykazać? Odpowiedź może obejmować nierozstrzygnięte rozbieżności zamiast udawać konieczną zgodność opóźnionego indeksu platformy i świeżej obserwacji własności.
Zachowuj zlecenia we własnym zapisie
Zlecenie opisuje warunki możliwej transakcji. Podpisanie zlecenia nie jest ukończeniem wymiany aktywów. Przegląd Seaport OpenSea wprowadza rozróżnienie oferowanych przedmiotów i świadczenia wymaganego w zamian dla obsługiwanych transakcji EVM.
Przy ofercie kupna rachunek może tworzyć możliwe przyszłe nabycie bez natychmiastowego otrzymania NFT. Przy ofercie sprzedaży może pozostać właścicielem, wyrażając gotowość sprzedaży. Zapisy zasobów i zleceń potrzebują zatem odrębnych stanów i jasnego powiązania.
Śledzenie podpisanych zleceń NFT powinno zachowywać tożsamość zlecenia, właściwy łańcuch i protokół, warunki, wygaśnięcie i istotne dowody statusu. Lokalna etykieta „opublikowane” powinna opisywać rzeczywistą wiedzę aplikacji zamiast sugerować wykonalność zlecenia aż do nominalnego wygaśnięcia.
Przewodnik po bocie OpenSea dokładniej wyjaśnia uprawnienia i dane platformy. Rozróżnienie liczy się tutaj, bo odczyt zlecenia, utworzenie podpisu i ukończenie transferu są różnymi możliwościami. Model rachunku nie powinien wywodzić jednej z obecności drugiej.
Oddzielaj możliwości nabywania od salda portfela
Widoczne saldo portfela nie opisuje każdego potencjalnego zobowiązania. Kilka ofert kupna może korzystać z tego samego aktywa płatności, a oczekujące transakcje mogą już używać środków nieuzgodnionych w najnowszym lokalnym saldzie. Polityka handlu potrzebuje własnego obliczenia alokacji.
Załóżmy fikcyjny rachunek dopuszczający 2,5 ETH ekspozycji kolekcji mierzonej kosztami nabycia i rezerwami nowych zakupów. Posiada trzy przedmioty nabyte za 0,3, 0,45 i 0,6 ETH, łącznie 1,35 ETH. Dwa możliwe zakupy rezerwują kolejne po 0,4 ETH.
Polityka liczy więc 2,15 ETH zobowiązań, pozostawiając 0,35 ETH. Nowa propozycja wymagająca 0,38 ETH nie mieści się. Wniosek wynika z wybranej polityki ekspozycji nawet przy wystarczających płynnych aktywach portfela do przesłania transakcji.
Przykład jest celowo prosty. Inna polityka może używać wartości scenariuszy skrajnych lub osobnych limitów przedmiotu i kolekcji. Niezależnie od miary podaj ją jawnie i policz to samo zobowiązanie ekonomiczne raz. Niewyjaśnioną sumę trudno ocenić przy jednoczesnych zmianach sald, ofert i zasobów.
Rezerwuj zasoby przed wydaniem ich przez konkurujące zadania
Dwie części bota mogą zbadać te same pozostałe możliwości i osobno uznać zakup za mieszczący się. Przy niezależnej autoryzacji łączne działania mogą przekroczyć limit. Krok rezerwacji powinien więc koordynować decyzje przed utworzeniem nowego zobowiązania przez którekolwiek zadanie.
Na fikcyjnym rachunku dwie jednoczesne propozycje po 0,25 ETH nie mogą obie używać tej samej rezerwy 0,35 ETH. Pierwsza przyjęta rezerwacja pozostawia 0,10 ETH według polityki. Drugą należy ocenić ponownie względem zaktualizowanego stanu.
Zachowuj właściciela i cel rezerwacji. Powinna wskazywać zamiar ekonomiczny, jak nabycie określonego przedmiotu, i pozostać powiązana z ostatecznym zleceniem lub transakcją. Ogólne odjęcie bez odniesienia może pozostać niezwolnione lub zostać zwolnione dwa razy.
To wymaganie spójności rachunku zamiast prognozy warunków rynkowych. Nawet doskonały model wyboru może tworzyć niechcianą ekspozycję przy dzieleniu budżetu bez koordynacji. Zapis rezerwacji ujawnia te interakcje przed nadejściem rzeczywistych zakupów.
Śledź nakładające się oferty bez założenia ich wyłączności
Rachunek może mieć oferty przedmiotów, cech lub kolekcji z nakładającymi się zbiorami kwalifikacji. System powinien rozumieć przedmioty spełniające każdą ofertę i liczbę nadal możliwych nabyć. Wspólny temat nie czyni osobno podpisanych zobowiązań wzajemnie wykluczającymi się.
Na przykład oferta konkretnego przedmiotu i szeroka oferta kolekcji mogą być aktywne jednocześnie. Możliwość spełnienia dowolnej z nich przez jeden przedmiot nie dowodzi możliwości tylko jednego nabycia w całej kolekcji. Inny kwalifikujący właściciel może zaakceptować szerszą ofertę.
Model zasobów musi łączyć oferty z ilością, finansowaniem i semantyką trasy. Unikaj obliczania ekspozycji wyłącznie przez liczenie odrębnych nazw kolekcji lub wyświetlanych wierszy zleceń. Właściwe pytanie dotyczy możliwych nabyć rachunku przy wykonaniu zgodnych zleceń.
Zmiany jednej oferty nie powinny po cichu usuwać drugiej z zapisu. Przy zamierzonym zastąpieniu ustal nieskuteczność starej instrukcji według właściwych reguł i zachowuj pozostałą niepewność. Etykieta zastąpienia w aplikacji nie przepisuje stanu platformy.
Oddzielaj oferty sprzedaży od dostępnych zasobów
Wystawiony przedmiot może pozostawać własnością przy zobowiązaniu do możliwej sprzedaży. Bot może też potrzebować blokowania innego wewnętrznego zadania planującego niezgodne działanie tym samym przedmiotem. To lokalna reguła koordynacji odrębna od zapisu własności łańcucha.
Przy wystawieniu jednego NFT przez dwie zgodne trasy sprzedaż przez jedną może wpływać na ważność drugiej. Bot powinien badać i uzgadniać oba zapisy przy zmianie własności. Nie powinien zakładać natychmiastowego usuwania nieaktualnych ofert przez każdy zewnętrzny interfejs.
Późniejsze ponowne nabycie tego samego identyfikatora daje kolejny powód badania starych autoryzacji. Ponowna istotność wcześniejszego zlecenia zależy od rzeczywistych warunków i stanu unieważnienia. Traktowanie przedmiotu jako trwale bezpiecznego od starych instrukcji tylko z powodu jednorazowego opuszczenia portfela jest niepopartym skrótem.
Użyteczny projekt zachowuje listę aktywnych lub nierozstrzygniętych zobowiązań sprzedaży każdego przedmiotu. Pomaga operatorowi rozumieć nadal możliwy przebieg i instrukcje do wycofania przy zmianie planu handlu.
Interpretuj anulowanie według rzeczywistego mechanizmu
Anulowanie jest przejściem stanu potrzebującym dowodów. Lokalne żądanie, odpowiedź platformy i potwierdzone unieważnienie w łańcuchu mogą dawać różne gwarancje. Bot powinien zapisać zastosowany mechanizm i pozostałą niepewność.
Dokumentacja anulowania zlecenia OpenSea poza łańcuchem konkretnie zastrzega zakres anulowania po wcześniejszym wydaniu autoryzacji realizacji. To powód badania bieżącej semantyki trasy zamiast uznawania każdej udanej odpowiedzi API za bezwarunkowy koniec wszelkiego możliwego wykonania.
Jeśli sprzedaż lub zakup kończy się podczas anulowania, zasoby muszą zapisać wynik. Zamiar operatora, by zatrzymać działanie, nie usuwa transferu. Niezrealizowane lub inaczej pozostałe zobowiązanie powinno następnie podlegać rzeczywistej strukturze zlecenia.
Zwalniaj lokalne rezerwy tylko przy poparciu przez właściwe dowody. Tymczasowe opóźnienie dostępnych możliwości jest lepsze niż informowanie innego zadania o wolnych środkach przy możliwym dalszym wykonaniu wcześniejszego zobowiązania.
Nadaj oczekującym transakcjom własny stan
Transakcja może być przesłana, zaobserwowana jako oczekująca, włączona do łańcucha, nieudana lub jeszcze nierozstrzygnięta z perspektywy aplikacji. Etykiety powinny odpowiadać dostępnym dowodom łańcucha i polityce potwierdzania rachunku zamiast licznikowi dobranemu dla pozoru stanowczości interfejsu.
Oczekujący zapis zachowuje pierwotny zamiar, odniesienie transakcji, oczekiwane aktywa i zarezerwowane zasoby. Przy utracie odpowiedzi stanowi początek odzyskiwania. Nowy proces nie powinien zgadywać zakupu próbowanego przez poprzedni.
Nie twórz drugiego nabycia tylko z powodu braku wygodnego wyniku pierwszej próby. Zastępowanie i ponawianie musi odpowiadać semantyce transakcji łańcucha. Nowa instrukcja ekonomiczna różni się od ponownego przesłania lub badania istniejącej.
Przewodnik po zautomatyzowanym bocie NFT rozwija interwencje operatora i granice działania bez nadzoru. Dla zasobów kluczowe jest pozostawanie niepewności jawnym stanem rachunku ze skutkiem dla zasobów do czasu rozstrzygnięcia.
Aktualizuj zasoby ze zweryfikowanych zmian aktywów
Gdy transakcja kończy się według wybranej polityki weryfikacji, połącz rzeczywiste zmiany aktywów z zamierzoną transakcją. Potwierdź przedmiot, ilość, odbiorcę i płatność zamiast polegać wyłącznie na ogólnym wskaźniku sukcesu.
Udana transakcja wykonująca inne dozwolone działanie nie powinna automatycznie tworzyć zamierzonego zasobu NFT w rejestrze. System potrzebuje dowodów konkretnego transferu lub zmiany salda. Rozróżnienie szczególnie pomaga przy kilku operacjach w jednej transakcji.
Powtórzone obserwacje tego samego transferu ekonomicznego powinny wzmacniać lub odświeżać dowody bez powielania zasobów. Zapisuj stałą tożsamość zdarzenia lub skutku transakcji i przestrzegaj semantyki rewizji właściwego protokołu. Liczba nadejść komunikatów nie jest ilością aktywa.
Jeśli oczekiwany przedmiot nigdy się nie pojawia, zapisz rozbieżność. Nie wytwarzaj wiersza zasobów dla pozoru kompletności propozycji. Celem uzgadniania jest porównywanie zamiaru z rzeczywistością, także przy ich różnicy.
Zachowuj ilości NFT o wielu jednostkach
Nie każdy zasób NFT jest dostatecznie opisany przez jednego właściciela i jedną unikalną jednostkę. Niektóre standardy reprezentują wiele jednostek pod identyfikatorem tokena. Model rachunku potrzebuje poprawnej semantyki ilości przed obliczaniem dostępnych zasobów lub sprzedaży.
Załóżmy fikcyjne nabycie pięciu jednostek po 0,08 ETH z dodatkowym łącznym kosztem 0,01 ETH. Całkowity koszt nabycia wynosi 0,41 ETH. Przy prostym równym przypisaniu każda jednostka niesie koszt 0,082 ETH.
Jeśli dwie jednostki później sprzedadzą się po 0,11 ETH, wpływy brutto wynoszą 0,22 ETH. Przy założonym łącznym obciążeniu wyjścia 0,006 ETH wpływy netto wynoszą 0,214 ETH. Przypisany koszt nabycia tych jednostek to 0,164 ETH, pozostawiając zrealizowany zysk 0,05 ETH.
Pozostają trzy jednostki z przypisanym kosztem 0,246 ETH. Ich przyszły wynik jest nierozstrzygnięty. Pozostanie identyfikatora tokena w portfelu nie oznacza obecności pierwotnych pięciu jednostek, a częściowa sprzedaż nie zamyka całej pozycji.
Zbuduj rejestr kosztu nabycia NFT
Rejestr kosztu nabycia NFT łączy każdy zasób z rzeczywiście zapłaconym świadczeniem i właściwymi wydatkami transakcji. Szacunki mogą wspierać autoryzację, lecz rzeczywiste kwoty należą do końcowego zapisu księgowego. Zachowuj oba dla wyjaśniania różnic.
Koszty mogą być wyrażone w różnych aktywach. Przechowuj pierwotną walutę i kwotę, a następnie stosuj jawną metodę konwersji do wspólnej jednostki raportowania. Zmiana dolarowej ceny ETH nie powinna zmieniać zapisanej liczby ETH wydanej na pierwotny zakup.
Spójnie przypisuj wspólne koszty przy nabyciu kilku przedmiotów jedną transakcją. Równe przypisanie może być zrozumiałe w przykładzie dydaktycznym, a inna metoda lepiej pasować konkretnemu celowi księgowemu. Podaj metodę zamiast dopuszczać przypisanie dające najkorzystniejszy zwrot przedmiotu.
Płatności na rzecz twórców i opłaty platformy wymagają tej samej staranności. Jeśli są już zawarte w całkowitym świadczeniu lub wpływach netto, nie potrącaj ich ponownie. Rejestr powinien opisywać rzeczywisty ruch gotówki zamiast gromadzić nakładające się etykiety tego samego wydatku.
Odróżniaj transfery wewnętrzne od zakupów i sprzedaży
Przeniesienie NFT między rachunkami kontrolowanymi przez tego samego operatora może zmieniać miejsce posiadania bez tworzenia wpływów sprzedaży. Transfer do monitorowanego portfela może też nadejść bez dowodów wystarczających do ustalenia historycznego kosztu.
Zapisuj ruch i jego znaną relację do rachunku. Nie przypisuj zerowego kosztu tylko z powodu braku płatności towarzyszącej zaobserwowanemu transferowi. Nieznana podstawa powinna pozostać nieznana do ustalenia jej przez zapisy wspierające, a raport powinien wyjaśniać wpływ brakującej wartości na sumy.
Podobnie transfer wychodzący nie jest automatycznie zyskowną sprzedażą ani stratą. Może być zmianą przechowywania, prezentem lub inną operacją. Klasyfikacja powinna odpowiadać dowodom świadczenia i celu zamiast samemu kierunkowi transferu NFT.
Zapobiega to zniekształcaniu wyników przez liczby aktywności. Ruchliwy portfel może generować wiele transferów przy niewielu rzeczywistych zakupach lub sprzedażach. Ruch zasobów i wynik ekonomiczny są powiązane tylko przy poparciu właściwym kontekstem transakcji.
Zachowuj historię przy opuszczeniu rachunku i powrocie własności
Ten sam identyfikator NFT może przechodzić przez rachunek więcej niż raz. Każde nabycie ma własny czas, koszt i tezę handlową. Ponowne użycie wiersza przez nadpisanie wcześniejszego kosztu usuwałoby wynik pierwszego okresu utrzymywania.
Utwórz odrębny epizod pozycji lub inną jasną strukturę historyczną. Sprzedaż zamyka właściwą ilość wcześniejszego epizodu; późniejszy zakup zaczyna nowy. Tożsamość przedmiotu pozostaje ta sama przy nowym rozdziale historii ekonomicznej.
Ma to znaczenie przy ocenie okresu utrzymywania i rotacji strategii. Jedna flaga bieżącej własności nie ujawnia kapitału zaangażowanego przez powtórne posiadanie ani tego, czy późniejszy zakup był droższy niż wcześniejsza sprzedaż.
Zachowanie wcześniejszego zapisu pomaga też badać stare zlecenia. Powracający przedmiot powinien zostać sprawdzony względem nierozstrzygniętych autoryzacji zamiast traktowania go jako zupełnie nieznanego aktywa bez wcześniejszych powiązanych zobowiązań.
Uzgadniaj po działaniach ręcznych i restartach
Bot rzadko jest jedynym możliwym źródłem aktywności rachunku. Właściciel może używać innego interfejsu, przenosić przedmiot lub ręcznie akceptować ofertę. Proces zasobów musi uwzględniać zmiany bez uznawania ich za niemożliwe z powodu braku lokalnej propozycji.
Po restarcie wczytaj nierozstrzygnięte zlecenia i transakcje przed tworzeniem nowej ekspozycji. Porównaj bieżącą własność i salda płatności z ostatnim popartym zapisem. Różnicę należy wyjaśnić zaobserwowaną aktywnością lub pozostawić jako jawną rozbieżność oczekującą przeglądu.
Restart nie powinien zerować liczników wydatków ani odrzucać oczekujących rezerw tylko z powodu przechowywania ich w pamięci. Zobowiązania rachunku przetrwają proces aplikacji. Trwałe zapisy pozwalają wznowionemu procesowi kontynuować tę samą historię ekonomiczną.
Przewodnik po oprogramowaniu do handlu NFT traktuje jakość księgowania jako kryterium wyboru. Atrakcyjny panel jest mniej użyteczny przy utracie powiązania otwartych zleceń, rzeczywistych zasobów i historycznych kosztów po każdym ponownym połączeniu aplikacji.
Bot handlowy ERC-1155 potrzebuje zapisów zasobów i zobowiązań uwzględniających ilość, ponieważ wiele jednostek identyfikatora tokena zmienia problem księgowy.
Testuj bota handlowego NFT ze sprzecznymi dowodami
Użyteczne ćwiczenie przeglądu obejmuje więcej niż czysty zakup i czystą sprzedaż. Daj systemowi powieloną obserwację transferu, opóźnioną aktualizację platformy, ręczny transfer wychodzący i anulowanie nakładające się na wykonanie. Określ oczekiwany stan rachunku przed ćwiczeniem.
W przykładzie pięciu jednostek powielone powiadomienie powinno nadal pozostawiać pięć nabytych jednostek. Zweryfikowana sprzedaż dwóch powinna pozostawić trzy. Późniejszy stary komunikat opisujący pięć jednostek nie powinien po cichu nadpisywać nowszego popartego stanu bez badania źródła i czasu obserwacji.
Testuj sumy zasobów oraz liczby przedmiotów. Rozstrzygnięte niepowodzenie może zwalniać możliwości zakupu przy zachowaniu rzeczywistego wydatku sieci. Ukończony zakup przenosi kwotę ekonomiczną z oczekującego zobowiązania do kosztu zasobu zamiast bezterminowego liczenia obu.
Celem jest spójna historia rachunku. Czytelnik powinien móc wyjaśnić własność, nadal możliwe wykonanie i pochodzenie zapisanych kosztów. Ta podstawa czyni decyzje handlowe dostępnymi do oceny nawet przy różnym czasie nadejścia danych rynku i stanu aplikacji.