บอตซื้อขาย NFT อัตโนมัติประสานลำดับการตัดสินใจและการเปลี่ยนแปลงบัญชี ได้แก่ การค้นหาชิ้นงาน การกันเงิน การส่งการกระทำ การยืนยันความเป็นเจ้าของ การจัดการการขาย และการบันทึกผล ส่วนที่ยากคือรักษาลำดับนี้ให้สอดคล้องกันเมื่อข้อความมาช้า คำสั่งจับคู่โดยไม่คาดคิด หรือแอปเริ่มระบบใหม่กลางธุรกรรม
การออกแบบที่มีประโยชน์ถือว่าทุกภาระมีสถานะที่ระบุได้และมีหลักฐานรองรับ ไม่สมมติว่าคำตอบ API ที่สำเร็จหมายถึงการซื้อขายเสร็จแล้ว หน้าจอที่หลุดเชื่อมต่อหมายถึงความล้มเหลว หรือคำสั่งที่ดูเหมือนยกเลิกแล้วจะไม่สามารถส่งผลต่อบัญชีได้อีก
คู่มือนี้อธิบายปัญหาการจัดการสถานะโดยใช้บัญชีที่แต่งขึ้นและกระบวนการเชิงแนวคิด ไม่ได้ให้ระบบซื้อขายที่พร้อมใช้งานหรือสัญญาว่าจะทำกำไรได้โดยอัตโนมัติ จุดประสงค์คือแสดงว่าซอฟต์แวร์ต้องจำและตรวจสอบอะไร ก่อนจะเปลี่ยนจากการซื้อขายอย่างหนึ่งไปสู่การกระทำถัดไปได้อย่างปลอดภัย
เริ่มจากวงจรการซื้อขายที่ครบถ้วน
วงจรการซื้อขายเริ่มก่อนการซื้อ และดำเนินต่อหลังส่งคำขอขาย การสังเกตตัวเลือก การอนุมัติตามนโยบาย การกันงบ การส่ง การดำเนินการ การกระทบยอดสินทรัพย์คงเหลือ และการชำระทางการเงินเป็นขั้นตอนที่แยกจากกัน แต่ละขั้นตอบคำถามต่างกัน
แอปพลิเคชันควรระบุขั้นเหล่านี้ให้ชัดเจนภายใน แม้หน้าจอจะแสดงสรุปที่เรียบง่ายกว่า สถานะทำงานอยู่เพียงอย่างเดียวอาจซ่อนว่าบอตกำลังวิจัยชิ้นงาน รอธุรกรรม หรือถือสินทรัพย์โดยไม่มีผู้ซื้อในขณะนี้
กำหนดหลักฐานที่ต้องใช้เพื่อออกจากแต่ละขั้น ข้อเสนออาจต้องมีรายการขายที่ใช้ได้และค่าประมาณต้นทุน ผลการซื้ออาจต้องมีหลักฐานธุรกรรมและความเป็นเจ้าของ บันทึกการเงินที่เสร็จครบถ้วนต้องใช้การโอนและค่าใช้จ่ายจริง แทนการคาดการณ์เดิม
โครงสร้างนี้ช่วยให้ผู้ดำเนินการเข้าใจความล่าช้า ระบบสามารถอธิบายว่ายังมีอะไรไม่คลี่คลาย แทนการดูเหมือนค้างหรือเริ่มการกระทำอีกอย่างโดยไม่บอก
การจัดการสถานะของบอตซื้อขาย NFT เริ่มจากตัวตน
การจัดการสถานะของบอตซื้อขาย NFT อัตโนมัติต้องมีตัวระบุคงที่สำหรับบัญชี สินทรัพย์ คำสั่ง ความพยายามทำธุรกรรม และเจตนาของกลยุทธ์ ตัวตนเหล่านี้เกี่ยวข้องกันแต่ใช้แทนกันไม่ได้ โทเคนหนึ่งอาจมีหลายคำสั่งเมื่อเวลาผ่านไป ส่วนการซื้อที่ตั้งใจหนึ่งครั้งอาจมีข้อมูลสังเกตหลายรายการเกี่ยวกับธุรกรรมเดียวกัน
เก็บเครือข่ายกับตัวระบุสินทรัพย์ที่เกี่ยวข้องไว้ข้างข้อมูลอ้างอิงของตลาด ชื่อคอลเลกชันหรือภาพไม่สามารถเชื่อมหลักฐานการดำเนินการเข้ากับชิ้นงานที่กลยุทธ์ตั้งใจซื้อขายได้อย่างน่าเชื่อถือ
เจตนาของกลยุทธ์ระบุการตัดสินใจที่ระบบกำลังพยายามทำให้สำเร็จ ส่วนตัวระบุธุรกรรมระบุการกระทำเฉพาะที่ส่งไป การเก็บทั้งคู่ทำให้การกู้คืนตรวจได้ว่าเจตนาเดิมเสร็จสมบูรณ์หรือไม่ โดยไม่สมมติว่าคำตอบใหม่ทุกครั้งแทนการซื้อขายอีกครั้ง
แอปพลิเคชันควรบันทึกด้วยว่าบัญชีและการตั้งค่าใดอนุมัติการกระทำนั้น การเริ่มระบบใหม่หรือเปลี่ยนค่าตั้งต้องไม่ทำให้ภาระเก่าดูเหมือนได้รับอนุญาตภายใต้ขีดจำกัดที่ใหม่กว่า
แยกข้อเสนอออกจากการอนุญาต
ตัวตรวจหาตัวเลือกสามารถเสนอชิ้นงานที่ควรพิจารณาได้โดยไม่ได้รับสิทธิ์ใช้เงิน ข้อเสนอควรมีหลักฐานที่เกี่ยวข้อง ยอดชำระที่คาด ต้นทุนสูงสุด และเหตุผลที่อาจทำให้โอกาสนั้นใช้ไม่ได้แล้ว
จากนั้นการตรวจสอบบัญชีที่เป็นอิสระจะตัดสินว่าข้อเสนอสอดคล้องกับเงินพร้อมใช้ ความเสี่ยงเดิม ขีดจำกัดคอลเลกชัน และเส้นทางดำเนินการที่รองรับหรือไม่ การแยกนี้ป้องกันไม่ให้คะแนนกลยุทธ์ที่สูงผิดปกติลบล้างข้อจำกัดพื้นฐาน
คู่มือซอฟต์แวร์ซื้อขาย NFT กล่าวถึงวิธีที่แอปควรแสดงหลักฐานและอำนาจแก่ผู้ใช้ สำหรับบอตซื้อขายอัตโนมัติ ขอบเขตภายในก็สำคัญเท่ากัน เพราะการค้นพบกับการอนุญาตมีบทบาทต่างกัน
หากข้อเสนอเปลี่ยน ควรพิจารณาการอนุญาตใหม่ โทเคนที่นำมาแทน ผู้รับที่ต่างไป หรือต้นทุนที่สูงขึ้นเป็นการกระทำทางเศรษฐกิจใหม่ แม้หน้าจอจะนำเสนอว่าเป็นการดำเนินต่ออย่างสะดวก
กันวงเงินก่อนส่งการกระทำ
กลยุทธ์สองแบบที่ใช้กระเป๋าเดียวกันอาจต่างเห็นว่ามีเงินพอซื้อ แต่แผนรวมกลับเกินขีดจำกัดบัญชี การกันวงเงินก่อนส่งป้องกันไม่ให้ทั้งคู่ถือว่าทรัพยากรเดียวกันยังพร้อมใช้
สมมติว่าบัญชีหนึ่งมีขีดจำกัดความเสี่ยงจากการซื้อ 1 ETH สินทรัพย์ที่ถืออยู่เดิมถูกนับเป็น 0.40 ETH และภาระเปิดเป็น 0.25 การซื้อที่เสนอ 0.20 ETH จะทำให้ยอดรวมเป็น 0.85 และเหลือวงเงินตามนโยบาย 0.15
ยอดที่กันควรรวมองค์ประกอบต้นทุนที่นโยบายกำหนด ไม่ใช่เฉพาะยอดรายการขาย ต้องตรวจสภาพคล่องแยกต่างหาก เพื่อยืนยันว่าสินทรัพย์ชำระที่ถูกต้องและเงินสำหรับเครือข่ายใช้จ่ายได้จริง
การกันวงเงินไม่ใช่ค่าใช้จ่าย และไม่ควรถูกบันทึกเป็นการซื้อที่เสร็จแล้ว มันเป็นภาระชั่วคราวที่คงอยู่จนกว่าหลักฐานจะยืนยันผลของการกระทำ หรือยืนยันว่าไม่สามารถดำเนินการได้อีก
บันทึกความพยายามส่งให้คงอยู่หลังระบบหยุด
ก่อนส่งหรือขณะส่งการกระทำ ให้เก็บข้อมูลเพียงพอสำหรับกู้คืน ได้แก่ เจตนาที่อนุมัติ ตัวตนสินทรัพย์ ผลที่คาด ข้อมูลอ้างอิงธุรกรรมหรือคำสั่ง และเวลาที่เกี่ยวข้อง บันทึกที่อยู่ในหน่วยความจำอย่างเดียวอาจหายไปตรงช่วงที่ต้องใช้มันมากที่สุด
การเริ่มใหม่ไม่ควรบังคับให้แอปเดาว่าเคยมีการกระทำนั้นหรือไม่ ระบบควรโหลดความพยายามที่ยังไม่ทราบผลและกระทบยอดก่อนสร้างคำสั่งทดแทน เรื่องนี้สำคัญเป็นพิเศษเมื่อคำขอเครือข่ายหมดเวลารอหลังไปถึงบริการผู้รับแล้ว
บันทึกถาวรต้องไม่เปิดเผยข้อมูลลับสำหรับลงนาม การกู้คืนต้องใช้ตัวระบุสาธารณะ พารามิเตอร์ที่อนุญาต และหลักฐานสถานะ ไม่ใช่คีย์ส่วนตัวที่คัดลงบันทึกหรือภาพหน้าจอ
การใช้งานที่มีประโยชน์ควรบันทึกเหตุผลของการลองซ้ำด้วย การถามสถานะซ้ำต่างจากการส่งคำขอซื้ออีกครั้ง หากถือทั้งสองเป็นการลองซ้ำทั่วไป ปัญหาสื่อสารชั่วคราวอาจกลายเป็นสินทรัพย์คงเหลือที่ซื้อซ้ำ
แยกการรับคำขอโดย API ออกจากการดำเนินการ
คำตอบ HTTP ที่สำเร็จอาจหมายความว่าอ่านคำขอได้ บันทึกคำสั่งแล้ว หรือสร้างข้อมูลธุรกรรมแล้ว ความหมายขึ้นอยู่กับปลายทาง มันไม่ได้ยืนยันในทุกกรณีว่า NFT เปลี่ยนเจ้าของแล้ว
เอกสารอ้างอิงการดำเนินการตามรายการขาย ของ OpenSea อธิบายข้อมูลที่ต้องใช้เพื่อทำรายการขายบนเชน การได้รับข้อมูลนั้นเป็นขั้นตอนเตรียมการ แยกจากการอนุญาตและยืนยันธุรกรรมที่เกิดตามมา
บอตซื้อขายอัตโนมัติควรตีความแต่ละคำตอบตามงานที่ทำ ตัวระบุคำสั่งควรอยู่ในบันทึกคำสั่ง ส่วนข้อมูลอ้างอิงธุรกรรมที่ส่งควรอยู่ในความพยายามดำเนินการ ทั้งสองไม่ควรสร้างกำไรที่รับรู้แล้วโดยอัตโนมัติ
ความแตกต่างเดียวกันนี้ช่วยจัดการข้อผิดพลาด คำขอเตรียมการที่ถูกปฏิเสธอาจไม่ทิ้งธุรกรรมใดให้กระทบยอด ส่วนคำตอบที่ไม่แน่นอนหลังส่งอาจต้องตรวจอย่างระมัดระวัง เพราะการกระทำนั้นอาจดำเนินการแล้ว
การกู้คืนของบอตซื้อขาย NFT ต้องรักษาความไม่แน่นอนไว้
การกู้คืนของบอตซื้อขาย NFT อัตโนมัติเริ่มจากการระบุภาระที่ยังไม่ทราบผล ไม่ควรสมมติว่าทุกการกระทำที่ค้างล้มเหลวระหว่างช่วงหยุดทำงาน หรือว่าหน้าจอกระเป๋าปัจจุบันบอกเรื่องทั้งหมด
สำหรับแต่ละความพยายาม ให้ตรวจธุรกรรมหรือคำสั่งเดิม แล้วเปรียบเทียบหลักฐานสินทรัพย์และเงินชำระที่เกิดขึ้น หากผลยังไม่ทราบ ให้เก็บเงินกันที่เกี่ยวข้องไว้ และปิดกั้นการกระทำที่ขัดกันตามนโยบายบัญชี
สถานะไม่ทราบผลไม่สะดวก แต่การแต่งความแน่นอนขึ้นมาแย่กว่า การปล่อยเงินกันเร็วเกินไปอาจเปิดให้ใช้วงเงินตามแผนเดียวกันซ้ำ การบันทึกว่าซื้อเสร็จเร็วเกินไปอาจสร้างรายการสินทรัพย์คงเหลือภายในให้สินทรัพย์ที่บัญชีไม่ได้เป็นเจ้าของจริง
การกู้คืนควรทำให้เกิดการเปลี่ยนสถานะที่มีเหตุผลรองรับ ได้แก่ เสร็จแล้ว ทราบว่าไม่สำเร็จ ยังทำงาน หรือยังไม่ทราบผล ผู้ดำเนินการต้องมีคำอธิบายชัดเจนว่าขาดหลักฐานอะไร และการกระทำใดยังถูกจำกัดระหว่างตรวจคำถามนั้น
กระทบยอดความเป็นเจ้าของก่อนจัดการการขาย
หลังการซื้อดูเหมือนสำเร็จ ให้ตรวจว่าบัญชีที่ตั้งใจใช้ควบคุมสินทรัพย์และปริมาณที่ถูกต้องจริง วิธีตรวจขึ้นอยู่กับเครือข่ายและมาตรฐาน NFT มุมมองที่ตลาดทำดัชนีไว้มีประโยชน์ได้ แต่อาจตามหลังหลักฐานอื่น
อย่าบังคับทุกสินทรัพย์ให้ใช้แบบจำลองความเป็นเจ้าของเดียว บัญชีโทเคน Solana ปกติ รูปแบบบีบอัด และมาตรฐานโทเคน EVM มีข้อกำหนดต่างกัน การรองรับการแสดงภาพคอลเลกชันไม่ได้ยืนยันว่ามีเส้นทางซื้อขายที่ครบถ้วน
เมื่อยืนยันความเป็นเจ้าของแล้ว ให้เชื่อมสินทรัพย์ที่ถือกับบันทึกการได้มา ฐานต้นทุนและประวัติธุรกรรมควรตามสินทรัพย์ที่ระบุตัวตนแล้ว ไม่ใช่ผูกเฉพาะชื่อที่แสดง
การแจ้งเตือนการซื้อที่ส่งซ้ำต้องไม่สร้างรายการสินทรัพย์ที่ถือรายการที่สอง การสังเกตซ้ำควรอัปเดตหลักฐานของเหตุการณ์ทางเศรษฐกิจเดิม ส่วนการได้สินทรัพย์อีกครั้งซึ่งแยกจากเดิมจริงต้องมีตัวตนและบัญชีของตัวเอง
ควบคุมสินทรัพย์คงเหลือของบอตซื้อขาย NFT
การควบคุมสินทรัพย์คงเหลือของบอตซื้อขาย NFT อัตโนมัติกำกับทั้งสิ่งที่บัญชีเป็นเจ้าของแล้ว และสิ่งที่ยังอาจซื้อผ่านภาระเปิด การควบคุมควรนับการกระจุกตัวในคอลเลกชัน อายุการถือ ปริมาณ และความสามารถรองรับการจับคู่เพิ่มเติม
สมมติว่าบัญชีเป็นเจ้าของสี่ชิ้นจากคอลเลกชันหนึ่ง และมีข้อเสนอซื้อที่เข้ากันได้อีกสามรายการค้างอยู่ สินทรัพย์คงเหลือที่อาจเกิดขึ้นจึงไม่ใช่เพียงสี่ชิ้น หากทุกข้อเสนอยังดำเนินการได้ บัญชีอาจรับความเสี่ยงจากเจ็ดชิ้น
บทความบอตซื้อขายคริปโตสำหรับ NFT อธิบายว่าทำไมไม่อาจถือสินทรัพย์คงเหลือ NFT เฉพาะชิ้นเหมือนยอดโทเคนที่ใช้แทนกันได้ทั้งหมด คุณสมบัติที่เข้าเกณฑ์และหลักฐานการขายออกของแต่ละชิ้นต่างกันได้แม้อยู่คอลเลกชันเดียว
ขีดจำกัดสินทรัพย์คงเหลือควรจำกัดทั้งคำสั่งใหม่และคำสั่งทดแทน การยกเลิกข้อเสนอหนึ่งแล้วโพสต์อีกข้อเสนอไม่ได้ทำให้ปล่อยวงเงินได้อย่างปลอดภัย จนกว่าภาระก่อนหน้าจะคลี่คลายตามกฎจริงของมัน
ติดตามรายการขายและข้อเสนอซื้อเป็นภาระที่ต่อเนื่อง
รายการขายหรือข้อเสนอซื้อที่ลงนามแล้วอาจยังมีผลหลังหน้าจอเปลี่ยนไปหน้าอื่น แอปต้องมีบันทึกช่วงเวลาที่ใช้ได้ ปริมาณ เงื่อนไขคุณสมบัติ และสถานะปัจจุบัน การมองไม่เห็นในระบบภายในไม่ได้หมายความว่าการอนุญาตถูกนำออกไปแล้ว
คำแนะนำข้อเสนอทั้งคอลเลกชัน ปัจจุบันของ OpenSea อธิบายว่าข้อเสนอ Ethereum ที่ไม่มีเงินรองรับกลับมาใช้ได้เมื่อเงินกลับมา การขาดยอดชั่วคราวจึงไม่ใช่วิธียกเลิกที่ใช้ได้ทุกกรณี
บอตควรแยกคำสั่งที่ทำงานอยู่ หมดอายุแล้ว จับคู่แล้ว ถูกทำให้ไม่มีผล หรือยังไม่ทราบผล แต่ละสถานะควรมีหลักฐานที่เกี่ยวข้องรองรับ ไม่ใช่อนุมานเพียงว่าคำสั่งปรากฏในคำตอบ API หน้าหนึ่งหรือไม่
แบบจำลองภาระต่อเนื่องนี้ป้องกันไม่ให้คำสั่งเก่าส่งผลที่ไม่คาดต่อบัญชีภายหลัง ทั้งยังให้ผู้ดำเนินการเห็นว่ากระเป๋าอนุญาตอะไรไปแล้ว ก่อนอนุมัติกิจกรรมกลยุทธ์เพิ่ม
จัดการการยกเลิกเป็นกระบวนการ
คำขอยกเลิกเป็นการกระทำที่มีผลและข้อจำกัดของตัวเอง แอปควรเก็บคำขอ ตรวจผล และระบุว่าคำสั่งเดิมยังดำเนินการได้หรือไม่ การกดปุ่มไม่ใช่หลักฐานเพียงพอ
เอกสารอ้างอิงการยกเลิกคำสั่ง ของ OpenSea ระบุข้อจำกัดของการยกเลิกนอกเชนเมื่อมีการออกการอนุญาตดำเนินการไว้แล้ว การออกแบบระบบไม่ควรเปลี่ยนคำตอบนอกเชนเป็นคำสัญญาไร้เงื่อนไขว่าจะไม่มีการดำเนินการภายหลัง
ระหว่างยกเลิก ให้รักษาการกันวงเงินที่เหมาะสมไว้ หากคำสั่งเดิมจับคู่ระหว่างที่กำลังคลี่คลายการยกเลิก บัญชีต้องประมวลผลการจับคู่นั้น แทนการทิ้งเพราะคิดว่าเป็นไปไม่ได้
นโยบายทดแทนควรระบุการแข่งขันนี้อย่างชัดเจน อาจรอหลักฐานที่หนักแน่นขึ้น ลดปริมาณคำสั่งทดแทน หรือกำหนดให้ทบทวน พฤติกรรมที่ถูกต้องขึ้นอยู่กับเส้นทางและระดับภาระพร้อมกันที่บัญชียอมรับได้
จัดการผลบางส่วนในระดับชิ้นงาน
กลุ่มการกระทำที่เสนออาจเสร็จเพียงบางส่วน บางชิ้นอาจซื้อแล้ว บางชิ้นอาจไม่พร้อม และบางชิ้นอาจยังไม่ทราบผล บัญชีต้องมีปริมาณจริงกับตัวตนชิ้นงาน ไม่ใช่ตัวบ่งชี้ความสำเร็จของตะกร้าแบบรวมเพียงตัวเดียว
หากแผนซื้อสามชิ้นได้ NFT มาสองชิ้น ให้บันทึกสินทรัพย์ที่ถือสองรายการกับต้นทุนจริง ส่วนที่ไม่จับคู่ไม่ควรสร้างสินทรัพย์คงเหลือ ส่วนความพยายามที่ยังไม่ทราบผลต้องรักษาเงินกันของตัวเองจนทราบผล
หลักเดียวกันใช้กับการขาย การขายสำเร็จหนึ่งครั้งไม่ได้ทำให้ชิ้นงานทุกชิ้นในกลุ่มเสร็จสิ้น สินทรัพย์ที่ยังถือยังต้องประเมินมูลค่า จัดการความเสี่ยง และอาจต้องทบทวนคำสั่งที่ทำงานอยู่
การทำเป็นชุดช่วยให้จัดระเบียบการกระทำได้สะดวก ไม่ใช่การรับประกันอะตอมมิกที่ใช้ได้ทั่วไป เส้นทางพื้นฐานกำหนดว่าการดำเนินการใดสำเร็จ ล้มเหลว หรือย้อนกลับร่วมกันได้ และบันทึกควรสะท้อนพฤติกรรมนั้น
สรุปบันทึกการเงินจากหลักฐานจริง
บันทึกการซื้อขายที่เสร็จควรใช้การโอนชำระเงินและค่าใช้จ่ายจริง ส่วนเผื่อกำไรที่คาดจากข้อเสนอมีประโยชน์สำหรับเปรียบเทียบ แต่ต้องไม่แทนสิ่งที่เกิดระหว่างดำเนินการ
พิจารณาการซื้อสมมติที่ราคา 0.20 ETH และมีค่าใช้จ่ายตอนเข้า 0.006 ETH การขายภายหลังที่ 0.24 มีรายการหักตัวอย่าง 3% และค่าใช้จ่ายตอนออก 0.003 เงินรับสุทธิคือ 0.2298 และกำไรที่เสร็จแล้วคือ 0.0238 ETH เมื่อเทียบกับต้นทุนการได้มา 0.206
หากแอปบันทึกเฉพาะส่วนต่างราคาก่อนหัก 0.04 จะทำให้ผลที่รายงานสูงเกินจริง หากบันทึกการขายที่คาดก่อนตรวจสอบเงินชำระ อาจรายงานกำไรที่ไม่เคยเกิด
การชำระควรเชื่อมการจำหน่ายสินทรัพย์ การได้รับเงินขาย และค่าใช้จ่ายจริง หลักฐานที่ขาดยังเป็นปัญหาที่ต้องกระทบยอด ไม่ใช่ช่องให้เติมด้วยค่าประมาณเดิม
แยกเงินสด เงินกันไว้ และต้นทุน
ยอดกระเป๋า การกันวงเงินตามนโยบาย และค่าใช้จ่ายเป็นสิ่งที่อธิบายคนละเรื่อง การสับสนกันอาจนับภาระซ้ำหรือทำให้บัญชีดูมีเงินใช้จ่ายมากกว่าจริง
สมมติว่าเส้นทางย้ายเงินข้อเสนอไปยังกลไกถือเงินบนเชน ยอดที่ใช้จ่ายได้อาจไม่รวมเงินนั้นอยู่แล้ว การหักยอดเดียวกันซ้ำจากยอดนั้นจะทำให้ประเมินสภาพคล่องต่ำไป ส่วนการละเลยภาระในการคำนวณความเสี่ยงจะทำให้ประเมินสินทรัพย์คงเหลือที่อาจเกิดต่ำไป
การกันวงเงินภายในนโยบายของแอปไม่จำเป็นต้องเป็นการโอนบนเชนเพิ่ม มันจำกัดกิจกรรมใหม่ได้โดยไม่เปลี่ยนยอดกระเป๋าจริง หน้าจอควรอธิบายว่ากำลังแสดงมาตรวัดใด
ควรรับรู้ต้นทุนจากการดำเนินการจริง เงินที่ฝากเข้าบัญชีและอาจได้คืนไม่ควรถูกถือว่าเหมือนกับค่าเครือข่ายที่ย้อนคืนไม่ได้โดยอัตโนมัติ การจัดหมวดที่แม่นยำทำให้เชื่อถือรายงานกู้คืนและรายงานผลงานได้ง่ายขึ้น
กู้คืนจากช่องว่างข้อมูลก่อนซื้อขายใหม่
กระบวนการที่กำลังทำงานอาจขาดการเชื่อมต่อข้อมูลตลาด ขณะที่คำสั่งที่อนุญาตไว้ก่อนหน้ายังมีผล ระบบไม่ควรสมมติว่าฟีดไม่มีกิจกรรมหมายถึงบัญชีไม่มีกิจกรรม
เอกสาร Stream API ของ OpenSea อธิบายการส่งเหตุการณ์แบบพยายามอย่างดีที่สุดและข้อจำกัดข้อความตกหล่น การเชื่อมกลับต้องมีแผนกระทบยอดสถานะปัจจุบันที่เกี่ยวข้อง ไม่ใช่เพียงไฟแสดงการเชื่อมต่อสีเขียว
ก่อนกลับมาผูกภาระใหม่ ให้เปรียบเทียบคำสั่งเปิด สินทรัพย์ที่ถือ และความพยายามที่ค้างกับหลักฐานที่รองรับ ภาพสถานะปัจจุบันอาจคืนสถานะการทำงานได้ ขณะที่ยังมีช่องว่างลำดับเหตุการณ์ในอดีต ควรคงป้ายระบุช่องว่างนั้นไว้
คู่มือบอต OpenSea กล่าวถึงขอบเขตระบบอัตโนมัติในภาพกว้าง บอตซื้อขายที่ทนต่อปัญหาใช้ขอบเขตนั้นเพื่อหยุดการตัดสินใจใหม่เมื่อมุมมองบัญชีไม่น่าเชื่อถือ แต่ยังทำงานที่จำเป็นต่อการคลี่คลายภาระเดิมต่อไป
ให้การควบคุมของผู้ดำเนินการตรงกับผลจริง
การพัก การหยุด และการยกเลิกไม่ใช่สิ่งเดียวกัน การพักกลยุทธ์อาจป้องกันข้อเสนอใหม่แต่ปล่อยคำสั่งเดิมให้ทำงาน การยกเลิกคำสั่งต้องมีกระบวนการของมันเอง การควบคุมฉุกเฉินควรระบุว่าพยายามทำการกระทำใดและยังมีอะไรไม่ทราบผล
ผู้ดำเนินการต้องมีมุมมองที่กระชับของภาระที่ยังทำงาน สินทรัพย์ที่เป็นเจ้าของ และความพยายามที่ไม่แน่นอน รายละเอียดเทคนิคยังเปิดให้ตรวจได้โดยไม่ท่วมหน้าจอปกติ แต่สถานะทางเศรษฐกิจควรเข้าใจได้
อย่าใช้ป้ายในแง่ดีที่ซ่อนงานซึ่งยังดำเนินอยู่ ข้อความ “หยุดคำสั่งใหม่อยู่ โดยมีการยกเลิกสองรายการรอผล” ให้ข้อมูลมากกว่าป้ายว่าหยุดแล้ว ขณะที่คำสั่งเหล่านั้นยังส่งผลต่อบัญชีได้
การควบคุมควรยังใช้ได้หลังล้มเหลวบางส่วนด้วย แอปไม่ควรต้องพึ่งวงจรกลยุทธ์ที่ทำงานสมบูรณ์เพียงเพื่อดูภาระ หรือเริ่มกู้คืนการกระทำที่ถูกขัดจังหวะ
ทดสอบการเปลี่ยนสถานะด้วยกรณีล้มเหลวที่ตั้งใจสร้าง
แผนทดสอบที่มีประโยชน์รวมการหมดเวลารอหลังส่ง เหตุการณ์ซ้ำ การเริ่มใหม่ก่อนยืนยัน การจับคู่ระหว่างยกเลิก และการขายที่ขาดหลักฐานเงินชำระ แต่ละสถานการณ์ควรมีสถานะที่คาดไว้และผลการทำบัญชีทรัพยากร
ตรวจว่าระบบไม่สร้างการซื้อครั้งที่สองขณะที่ครั้งแรกยังไม่ทราบผล ยืนยันว่าการแจ้งเตือนการจับคู่ที่ส่งซ้ำไม่ทำให้สินทรัพย์คงเหลือหรือกำไรเพิ่มซ้ำ และยืนยันว่าเงินกันตามงบยังคงอยู่จนภาระที่เกี่ยวข้องคลี่คลาย
การทดสอบควรรวมการเปลี่ยนค่าตั้งขณะที่คำสั่งยังทำงาน การลดขีดจำกัดไม่ได้ลบการอนุญาตก่อนหน้าโดยอัตโนมัติ ระบบต้องมีนโยบายทบทวนหรือคลายภาระที่ไม่ตรงกับค่าตั้งที่ต้องการแล้ว
แบบฝึกเหล่านี้ยืนยันพฤติกรรมที่สำคัญระหว่างทำงาน การสาธิตเส้นทางปกติที่สำเร็จมีประโยชน์ แต่ไม่สามารถยืนยันการกู้คืนที่น่าเชื่อถือเมื่อหลักฐานมาช้าหรือไม่เป็นไปตามลำดับที่คาด
สร้างระบบอัตโนมัติรอบสถานะที่อธิบายได้
บอตซื้อขาย NFT อัตโนมัติน่าเชื่อถือได้เท่าที่อธิบายได้ว่าตั้งใจอะไร อนุญาตอะไรไปแล้ว เกิดอะไร และยังมีอะไรไม่แน่นอน การเปลี่ยนสถานะที่ชัดเจนเชื่อมการตัดสินใจของกลยุทธ์กับผลต่อบัญชีจริง
โครงสร้างนี้ไม่ได้รับประกันการคัดเลือกที่มีกำไร แต่ป้องกันความผิดพลาดอีกกลุ่ม ซึ่งการกระทำซ้ำ ภาระเก่า หรือบัญชีไม่ครบทำให้ผลผิดเพี้ยน ไม่ว่ากลยุทธ์มีคุณภาพเพียงใด
ใช้ตัวตนที่คงที่ ความพยายามที่บันทึกถาวร ขีดจำกัดที่เป็นอิสระ และการชำระที่อาศัยหลักฐาน จากนั้นทำให้การควบคุมและรายงานของผู้ดำเนินการสะท้อนข้อเท็จจริงเดียวกัน ผลคือกระบวนการอัตโนมัติที่สามารถตรวจสอบและกู้คืนพฤติกรรมได้ แทนการเดาจากยอดที่เคลื่อนหรือข้อความสำเร็จทั่วไป