กระบวนการของบอตทำกำไรและตัดขาดทุนอัตโนมัติบน Solana เชื่อมการสังเกตราคาเข้ากับการพิจารณาขายโทเคนที่ถืออยู่ ความยากอยู่ที่การประสานคำสั่งหลังเงื่อนไขเปลี่ยนไป เงื่อนไขทำกำไรอาจกันโทเคนไว้ก่อนที่ราคาจะกลับทิศอย่างรุนแรงจนเข้าเงื่อนไขตัดขาดทุน ธุรกรรมอาจส่งสำเร็จแต่ระบบภายในยังไม่ทราบผล และการขายบางส่วนอาจเปลี่ยนความหมายของเปอร์เซ็นต์ทุกค่าที่ใช้ต่อจากนั้น
การออกแบบที่มีประโยชน์ถือว่ากฎทำกำไรและกฎตัดขาดทุนเป็นส่วนหนึ่งของตัวควบคุมสถานะการลงทุนเดียวกัน ระบบต้องกำหนดหน่วยวัด ขอบเขตปริมาณ ขอบเขตธุรกรรม และวิธีกู้คืนก่อนเปิดใช้เงื่อนไขใดเงื่อนไขหนึ่ง ตัวอย่างสมมติต่อไปนี้กล่าวถึงการขายออกจากโทเคนสปอตที่ได้รับอนุญาต เกณฑ์และต้นทุนเป็นสมมติฐานเพื่อการสอน ไม่ใช่ค่าที่แนะนำ ผลตอบแทนที่คาดหวัง หรือคำรับรองว่าจะขายได้ตามราคาที่สังเกตเห็น
กำหนดหน่วยของเงื่อนไขบอตทำกำไรและตัดขาดทุนบน Solana ก่อน
เงื่อนไขกระตุ้นที่ระบุเป็นเปอร์เซ็นต์ยังไม่สมบูรณ์หากไม่ได้กำหนดตัวหารและหน่วย เงื่อนไขอาจเปรียบเทียบราคาโทเคนกับราคาเข้าซื้อ เปรียบเทียบมูลค่าโดยประมาณของสินทรัพย์ที่ถือกับต้นทุนการได้มา หรือเปรียบเทียบผลของพอร์ตกับงบประมาณที่กว้างกว่า นิยามเหล่านี้อาจนำไปสู่การตัดสินใจต่างกัน แม้ใช้ข้อมูลตลาดชุดเดียวกัน ให้เขียนสิ่งที่ต้องการเปรียบเทียบด้วยภาษาทั่วไปก่อนแปลงเป็นเปอร์เซ็นต์
สำหรับโทเคนสปอตบน Solana ต้องระบุด้วยว่าหน่วยราคาเสนอเป็น SOL โทเคนมูลค่าคงที่ชนิดใดชนิดหนึ่ง หรือสกุลเงินภายนอกที่ใช้ทำบัญชี โทเคนอาจมีมูลค่าเพิ่มเมื่อเทียบกับ SOL แต่มีมูลค่าลดลงเมื่อประเมินเป็นดอลลาร์ หาก SOL เองลดลงมากพอ ที่อยู่ mint ที่แน่นอนของโทเคนที่ใช้เป็นหน่วยราคาเสนอมีความสำคัญ สัญลักษณ์ที่คุ้นเคยเพียงอย่างเดียวยังไม่ใช่หลักฐานยืนยันตัวตนที่เพียงพอ
สมมติราคาโทเคนเพิ่มจาก 0.001 SOL เป็น 0.0011 SOL หรือเพิ่ม 10% เมื่อวัดเป็น SOL หากในเวลาเดียวกันมูลค่าดอลลาร์ของ SOL ตามสมมติฐานลดจาก 200 เป็น 160 ราคาดอลลาร์โดยนัยของโทเคนจะเปลี่ยนจาก 0.20 เป็น 0.176 หรือลดลง 12% เงื่อนไขขาดทุนที่วัดเป็นดอลลาร์และเงื่อนไขกำไรที่วัดเป็น SOL จึงอาจสอดคล้องกับข้อมูลชุดนี้ได้ทั้งคู่ นโยบายต้องเลือกว่าแท้จริงแล้วควบคุมการเปรียบเทียบแบบใด
สร้างสถานะการลงทุนจากบันทึกการได้มาที่ตรวจสอบแล้ว
ฐานต้นทุนเมื่อเข้าซื้อควรมาจากการเคลื่อนไหวของสินทรัพย์ที่เกิดขึ้นจริงและวิธีบัญชีต้นทุนที่เลือกใช้ คำขอซื้อที่ส่งไปแล้วยังไม่ได้ยืนยันจำนวนโทเคนที่ได้รับ ต้องตรวจสอบ mint เป้าหมาย ปริมาณที่เข้าบัญชี ยอดเงินทุนที่ถูกหัก และค่าใช้จ่ายที่เกี่ยวข้อง แยกต้นทุนออกจากทรัพยากรที่ถูกผูกไว้ชั่วคราวเพื่อดำเนินงานของบัญชี หากทรัพยากรประเภทหลังยังเรียกคืนได้ภายใต้เงื่อนไขที่ระบบรองรับ
หากการซื้อหลายครั้งรวมเป็นสถานะการลงทุนเดียว ให้กำหนดว่านโยบายขายออกใช้ฐานต้นทุนเฉลี่ย แยกล็อต หรือใช้วิธีอื่นที่มีเอกสารกำกับ การฝากโทเคนชนิดเดียวกันเข้ามาภายหลังไม่ได้ทำให้โทเคนที่ฝากมีต้นทุนทางเศรษฐกิจเป็นศูนย์โดยอัตโนมัติ หากไม่ทราบฐานต้นทุนการได้มา ต้องคงความไม่แน่นอนนั้นไว้ แทนการปล่อยให้ยอดฝากทำให้เปอร์เซ็นต์กำไรที่แสดงสูงเกินจริง
คู่มือเครื่องคำนวณกำไรเหรียญมีม อธิบายความแตกต่างระหว่างเงินที่ได้จากการขายกับกำไร สำหรับตัวควบคุมการขายออก ความแตกต่างนี้มีผลต่อการอนุญาตให้ดำเนินการ กฎที่ระบุว่าให้คืนเงินลงทุนเริ่มต้นต้องกำหนดจำนวนเงินลงทุนเริ่มต้นให้แน่นอน ส่วนกฎที่ระบุว่าให้ขายเมื่อราคาเพิ่ม 20% ใช้การคำนวณอีกแบบหนึ่ง การทำบัญชีให้ชัดช่วยป้องกันไม่ให้การตั้งค่าที่ดูคล้ายกันสองแบบนำไปสู่การขายที่แตกต่างกันอย่างมีนัยสำคัญ
ตีความเงื่อนไขกระตุ้นด้วยราคาเสนอที่ใช้ดำเนินการได้
ราคาซื้อขายครั้งล่าสุดหรือราคาประเมินบนกราฟช่วยติดตามเงื่อนไขได้ แต่ไม่ได้ยืนยันว่าสินทรัพย์ที่ถืออยู่จะขายได้เป็นมูลค่าเท่าใด ปริมาณที่จะขายมีความสำคัญ ในตลาดที่สภาพคล่องตื้น ไม่ควรนำราคาเสนอสำหรับปริมาณเล็กน้อยไปคูณเพื่อสมมติว่าจะขายสถานะทั้งหมดได้ในอัตราเดียวกัน เงื่อนไขกระตุ้นควรระบุว่าใช้ราคาประเมินอ้างอิง ราคาเสนอสำหรับขนาดที่กำหนด หรือยอดรับสุทธิโดยประมาณ
พิจารณาการถือครองสมมติ 10,000 โทเคน ซึ่งมีต้นทุนการได้มารวมค่าใช้จ่ายที่เกี่ยวข้อง 100 หน่วย ราคาประเมินบนกราฟที่ 0.012 สื่อว่ามีมูลค่า 120 หน่วย แต่ราคาเสนอที่ระบบรองรับสำหรับการขายทั้งหมดให้ยอดรับ 112 หน่วย ก่อนหักค่าใช้จ่ายดำเนินการโดยประมาณ 2 หน่วย เงินรับสุทธิโดยประมาณจึงเป็น 110 หรือมีกำไร 10 หน่วยเมื่อเทียบกับฐานต้นทุนนั้น ไม่ใช่กำไร 20 หน่วยตามที่ราคาบนกราฟสื่อ
นโยบายยังอาจใช้เงื่อนไขบนกราฟเพื่อเริ่มขอราคาเสนอได้ แต่ต้องรักษาความแตกต่างระหว่างข้อมูลที่สังเกตกับเงื่อนไขที่อนุญาตให้ดำเนินการ กรอบทำกำไรและตัดขาดทุน อธิบายความสัมพันธ์ระหว่างเงื่อนไขกระตุ้นกับการดำเนินการในภาพกว้าง สัญญาณที่ดูเป็นผลดีเป็นเพียงจุดเริ่มต้นของการตัดสินใจขายออก ไม่ใช่หลักฐานว่าได้บรรลุเป้าหมายทางเศรษฐกิจแล้ว
ให้เงื่อนไขกำไรและขาดทุนใช้ข้อมูลสถานะการลงทุนร่วมกัน
กฎที่ทำงานแยกกันอาจสังเกตข้อมูลได้ถูกต้องทั้งคู่ แต่ขัดแย้งกันเมื่อต้องใช้โทเคนชุดเดียวกัน เงื่อนไขกำไรอาจขอขายบางส่วนขณะที่ราคาสูงขึ้น ก่อนทราบผลของการขายนั้น เงื่อนไขขาดทุนอาจขอขายทั้งหมดหลังราคากลับทิศ หากไม่มีการกันปริมาณร่วมกัน กฎที่สองอาจพยายามขายหน่วยที่กฎแรกผูกไว้แล้ว
ให้ใช้ข้อมูลอ้างอิงหลักเพียงชุดเดียวสำหรับปริมาณที่ยืนยันแล้ว ปริมาณที่กันไว้ และปริมาณที่ยังใช้ได้ของสถานะการลงทุนนั้น เจตนาขายแต่ละรายการที่ได้รับอนุมัติต้องหักจากปริมาณที่ใช้ได้ก่อนส่งคำสั่ง ข้อมูลที่สังเกตภายหลังต้องปรับปรุงบันทึกชุดเดียวกัน การประสานนี้ต้องดำเนินต่อได้หลังเริ่มกระบวนการใหม่ และไม่ควรขึ้นอยู่กับว่าแผงเงื่อนไขใดในส่วนติดต่อผู้ใช้รีเฟรชก่อนโดยบังเอิญ
กฎยังต้องมีนโยบายกำหนดลำดับความสำคัญ ข้อมูลขาดทุนที่สังเกตใหม่อาจระงับการสร้างเจตนาทำกำไรเพิ่มเติมระหว่างที่กำลังกระทบยอดการขายเดิม แต่ไม่ได้แปลว่าจะยกเลิกธุรกรรมที่ส่งไปแล้วได้เสมอ ตัวควบคุมต้องแยกการปิดกั้นงานใหม่ออกจากการย้อนกลับงานเก่า เพราะวงจรธุรกรรมจริงอาจไม่รองรับการย้อนกลับ การใช้ข้อมูลสถานะเดียวที่สอดคล้องกันช่วยป้องกันไม่ให้ป้ายกำกับที่ขัดกันกลายเป็นอำนาจใช้สินทรัพย์ซ้ำซ้อน
กันปริมาณเพื่อแก้ความขัดแย้งของคำสั่งทำกำไรและตัดขาดทุนบน Solana
พิจารณาสถานะสมมติที่มี 1,000 โทเคน กฎทำกำไรอนุญาตให้ขาย 300 และตัวควบคุมกันปริมาณนั้นไว้ ก่อนทราบผลการขาย กฎตัดขาดทุนขอขายทั้งหมด ในเวลานั้นมีโทเคนที่ยังไม่ได้กันไว้เพียง 700 แม้ยอดกระเป๋าที่สังเกตล่าสุดยังแสดงครบ 1,000 ก็ตาม โทเคน 300 ที่ยังไม่ทราบผลต้องคงความเชื่อมโยงกับเจตนาเดิมไว้
หากการขายแรกสำเร็จในภายหลัง ปริมาณคงเหลือที่ยืนยันแล้วจะเป็น 700 ก่อนนำการเคลื่อนไหวจริงอื่นมาคิด หากยืนยันได้แน่นอนว่าการขายล้มเหลวโดยไม่มีโทเคนถูกขาย จึงปล่อยปริมาณที่กันไว้ได้ตามกฎกู้คืนที่ใช้บังคับ หากยังไม่ทราบผล ตัวควบคุมไม่ควรนับ 300 นั้นเป็นปริมาณที่พร้อมใช้ ความเงียบของระบบภายในไม่ได้พิสูจน์ว่าธุรกรรมไม่มีผล
แผนขายทั้งหมดที่อยู่ในคิวสามารถระบุความต้องการออกจากสถานะทั้งหมดได้ ขณะเดียวกันก็ส่งขายเฉพาะปริมาณที่ได้รับอนุญาตและพร้อมใช้ในปัจจุบัน หลังทราบผลแต่ละครั้ง ระบบต้องประเมินส่วนที่เหลือใหม่ด้วยราคาเสนอที่เป็นปัจจุบันและการตรวจทรัพยากร วิธีนี้ต่างจากการส่งคำสั่งขายเต็มสถานะสองรายการที่ทับซ้อนกัน แล้วหวังว่าเชนจะปฏิเสธรายการส่วนเกิน การปฏิเสธอาจป้องกันการโอนที่เป็นไปไม่ได้ แต่ยังอาจใช้เวลา เสียค่าธรรมเนียม หรือทำให้พลาดโอกาส
ระบุว่าเปอร์เซ็นต์อ้างอิงปริมาณเริ่มต้นหรือปริมาณที่เหลือ
แผนทยอยทำกำไรมักใช้เปอร์เซ็นต์ที่ฟังดูชัดเจน แต่ซ่อนฐานคำนวณที่ต่างกัน การขาย 25% ของสถานะเริ่มต้นสองครั้งจะขายรวมครึ่งหนึ่งของปริมาณเริ่มต้น หากมีหน่วยที่พร้อมใช้เพียงพอ ส่วนการขาย 25% ของปริมาณที่เหลือสองครั้งจะขายรวม 43.75% ของปริมาณเริ่มต้น ทั้งสองแบบเป็นนิยามที่ใช้ได้ แต่ไม่ใช่แผนเดียวกัน
สำหรับยอดถือครองเริ่มต้นสมมติ 1,600 โทเคน จำนวน 25% ของปริมาณเริ่มต้นเท่ากับ 400 การขายเช่นนี้สองครั้งรวมเป็น 800 แต่หากใช้กฎอ้างอิงปริมาณที่เหลือ ครั้งแรกจะขาย 400 และครั้งที่สองขาย 25% ของ 1,200 หรือ 300 จึงขายรวม 700 และเหลือ 900 ตัวควบคุมควรบันทึกฐานคำนวณที่เลือกไว้ เพื่อไม่ให้การเริ่มระบบใหม่หรือการปรับด้วยมือในภายหลังเปลี่ยนฐานโดยไม่ตั้งใจ
การปัดเศษก็มีความสำคัญเมื่อปริมาณโทเคนต้องสอดคล้องกับความละเอียดจริงของสินทรัพย์ ให้กำหนดว่าการปัดเศษมีผลอย่างไรต่อยอดเศษสุดท้ายและขนาดขายขั้นต่ำที่ทำได้จริง หลีกเลี่ยงการพยายามขายปริมาณเล็กน้อยซ้ำ ๆ จนเสียต้นทุนมากกว่าเงินที่อาจได้รับ แผนที่ดำเนินครบแล้วอาจเหลือยอดเศษที่ยังติดตามไว้ได้อย่างสมเหตุสมผล หากระบบไม่รองรับการขายยอดนั้นหรือขายแล้วไม่คุ้มทางเศรษฐกิจ แต่ยอดเศษต้องยังปรากฏในบัญชี
แยกขอบเขตเงื่อนไขกระตุ้นออกจากขอบเขตการดำเนินการ
เกณฑ์ขาดทุนกำหนดว่าตัวควบคุมควรเริ่มพิจารณาดำเนินการเมื่อใด ส่วนยอดรับขั้นต่ำที่ยอมรับได้กำหนดเงื่อนไขที่แย่ที่สุดซึ่งธุรกรรมที่เสนอได้รับอนุญาตให้ยอมรับ ในกรณีที่ระบบรองรับขอบเขตนั้น ทั้งสองมีหน้าที่ต่างกัน การกระตุ้นที่ราคาอ้างอิงหนึ่งไม่ได้รับประกันว่าตลาดจะยังเสนอราคานั้นเมื่อธุรกรรมดำเนินการจริง
ความแตกต่างนี้ชัดเจนเมื่อราคากระโดดข้ามช่วง สมมติเงื่อนไขขาดทุนของสถานะหนึ่งเริ่มทำงานเมื่อเงินที่คาดว่าจะได้จากการขายต่ำกว่า 90 หน่วย แต่ราคาเสนอถัดไปที่ใช้ได้ให้เพียง 82 นโยบายที่กำหนดขั้นต่ำ 89 จะปฏิเสธเงื่อนไขที่มีอยู่หรือไม่สามารถดำเนินการได้ ขณะที่นโยบายซึ่งยอมรับ 82 อาจรับรู้ขาดทุนมากกว่าเดิม ไม่ควรซ่อนผลของทางเลือกใดไว้หลังป้ายเงื่อนไขกระตุ้นเดิมที่ 90 หน่วย
กำหนดวิธีตอบสนองก่อนเกิดช่องว่างราคา กลยุทธ์อาจพักเพื่อทบทวน ยอมรับขาดทุนที่กว้างขึ้นแต่ยังมีขอบเขตภายใต้อำนาจที่ชัดเจน หรือขอราคาเสนอที่เข้าเกณฑ์ต่อภายในนโยบายที่จำกัดไว้ ไม่มีการตั้งค่าใดรับประกันได้พร้อมกันว่าจะขายทั้งหมดทันทีและได้ราคาที่ตลาดไม่รองรับแล้ว ส่วนติดต่อควรอธิบายสิ่งที่ต้องแลกกันนี้ด้วยหน่วยเดียวกับงบความเสี่ยงของสถานะ
การสังเกตซ้ำใกล้ขอบเขตก็ต้องมีหลักการตีความที่ประกาศไว้ ตัวควบคุมอาจกำหนดให้เงื่อนไขเป็นจริงต่อเนื่องตามช่วงเวลาที่เลือก หรือรีเซ็ตต่อเมื่อข้อมูลที่สังเกตข้ามอีกระดับหนึ่ง กฎเช่นนี้ลดการกระตุ้นซ้ำได้ แต่เพิ่มความล่าช้าและอาจพลาดโอกาสดำเนินการที่เปิดอยู่เพียงช่วงสั้น ๆ จึงควรประเมินในฐานะทางเลือกของกลยุทธ์ แทนการเรียกว่าเป็นค่าเริ่มต้นที่ปลอดภัยกว่าในทุกกรณี
เก็บข้อมูลดิบที่สังเกตควบคู่กับผลเงื่อนไขกระตุ้นหลังผ่านตัวกรอง บันทึกนี้ช่วยอธิบายว่าการขายออกล่าช้าเพราะขาดหลักฐานตลาด เพราะกฎกำหนดให้เงื่อนไขคงอยู่นานพอ หรือเพราะการดำเนินการก่อนหน้ายังไม่ทราบผล แต่ละสาเหตุต้องทบทวนต่างกัน การรวมทั้งหมดเป็นสถานะรอทั่วไปเพียงสถานะเดียวจะปกปิดพฤติกรรมจริงของนโยบาย
แยกความใช้ได้ของธุรกรรมบนเครือข่ายออกจากความสดใหม่ทางเศรษฐกิจ
ธุรกรรม Solana อาจยังส่งเข้าเครือข่ายได้อย่างถูกต้อง ขณะที่ราคาเสนอซึ่งใช้เป็นเหตุผลในการสร้างธุรกรรมนั้นล้าสมัยทางเศรษฐกิจไปแล้ว ในทางกลับกัน ราคาเสนอที่เพิ่งได้รับไม่ได้แก้ข้อมูลความใช้ได้ของธุรกรรมที่หมดอายุ ตัวควบคุมต้องมีหลักฐานทั้งสองประเภท และควรสร้างข้อเสนอใหม่หรือละทิ้งข้อเสนอเมื่อข้ามขอบเขตที่เกี่ยวข้อง
เอกสารธุรกรรมของ Solana อธิบายแบบจำลองธุรกรรม ส่วนเอกสารอ้างอิงการส่งธุรกรรม แยกการที่ RPC รับคำขอออกจากการประมวลผลหรือยืนยันจริงบนเครือข่าย ความแตกต่างนี้สำคัญเมื่อจำเป็นต้องขายออกอย่างเร่งด่วน ลายเซ็นที่ส่งกลับมาเป็นตัวระบุสำหรับติดตามความพยายามครั้งนั้น ไม่ได้แปลว่าความเสี่ยงลดลงสำเร็จแล้ว
บันทึกว่าราคาเสนอ ปริมาณที่ตั้งใจขาย และข้อมูลความใช้ได้ชุดใดผูกกับธุรกรรมที่ส่งไป หากเหมาะสมที่จะสร้างใหม่หลังทราบผลของความพยายามเดิมหรือหลังความพยายามเดิมหมดความใช้ได้ ให้เชื่อมความพยายามใหม่กับเป้าหมายขายออกในภาพรวมเดียวกัน โดยไม่ลบข้อเท็จจริงที่ว่าแต่ละครั้งมีการอนุญาตแยกกัน รายการทดแทนต้องสะท้อนยอดถือครองที่พร้อมใช้และเงื่อนไขตลาดในปัจจุบัน แทนการทำซ้ำปริมาณเก่าที่ไม่เหมาะกับสถานการณ์แล้วอย่างตายตัว
สำรอง SOL ให้เพียงพอตลอดวงจรการขายออก
การขายโทเคนยังต้องใช้ทรัพยากรที่พร้อมใช้งานสำหรับเส้นทางธุรกรรมที่ระบบรองรับ บัญชีซึ่งมูลค่าที่เห็นทั้งหมดกระจุกอยู่ในโทเคนเป้าหมายอาจไม่มี SOL ซึ่งเป็นสินทรัพย์ประจำเครือข่ายเพียงพอสำหรับค่าธรรมเนียมหรือการดำเนินงานบัญชีที่จำเป็น มูลค่าพอร์ตที่แสดงไม่ใช่สิ่งเดียวกับยอดค่าธรรมเนียมที่บัญชีนั้นนำมาใช้ได้ ให้สำรองทรัพยากรดำเนินงานก่อนนำทรัพยากรทั้งบัญชีไปผูกกับสถานะการลงทุน
เงินสำรองควรเผื่อความพยายามที่ล้มเหลวและการจัดการภายหลัง ไม่ใช่คิดเฉพาะการขายในอุดมคติครั้งเดียว เอกสารค่าธรรมเนียมทางการของ Solana อธิบายต้นทุนธุรกรรมในสินทรัพย์ประจำเครือข่ายและองค์ประกอบการจัดลำดับความสำคัญ การจ่ายเพิ่มเพื่อให้ได้ลำดับความสำคัญไม่ได้รับประกันราคาที่ต้องการหรือการขายออกที่มีกำไร หากอนุญาตให้จ่ายเพิ่ม ต้องคงยอดไว้ภายในเพดานต้นทุนที่ชัดเจนและสัมพันธ์กับขนาดทางเศรษฐกิจของสถานะ
ในกรณีสมมติ การขายคาดว่าจะได้เงิน 5 หน่วยบัญชี ขณะที่ต้นทุนรวมโดยประมาณเป็น 1.5 จึงคาดว่าจะได้รับสุทธิเพียง 3.5 การลองซ้ำโดยไม่มีงบสะสมสำหรับความพยายามทั้งหมดอาจกินมูลค่าที่เหลือไปเป็นส่วนมาก ตัวควบคุมควรอธิบายว่าหยุดเพราะการลองต่อจะขัดกับนโยบายต้นทุนเมื่อใด แทนการแสดงยอดเศษทุกก้อนที่ยังขายไม่ได้ว่าเป็นความล้มเหลวของซอฟต์แวร์ที่ไร้คำอธิบาย
เข้าใจพฤติกรรมโทเคนก่อนเชื่อว่าปริมาณนั้นใช้ขายได้
สินทรัพย์โทเคนที่ถือบน Solana อาจใช้โปรแกรมที่ระบบรองรับต่างกันและมีความสามารถเสริมต่างกัน ตัวควบคุมต้องเข้าใจ mint และบัญชีจริงที่เส้นทางของตนใช้ จำนวนที่แสดงในรายการติดตามยังไม่เพียงพอที่จะยืนยันว่าปริมาณนั้นโอนหรือขายได้ตามสมมติฐานของธุรกรรมที่เสนอ ต้องตรวจสถานะปัจจุบันที่เกี่ยวข้องและพฤติกรรมที่ระบบรองรับ
เอกสารส่วนขยายโทเคนทางการ อธิบายความสามารถที่เลือกใช้ได้ ไม่ใช่พฤติกรรมเดียวที่โทเคนทุกชนิดมีร่วมกัน ดังนั้นการตรวจความเข้ากันได้ต้องทำเฉพาะสินทรัพย์แต่ละชนิด อย่าระบุว่าโทเคนทุกตัวขายไม่ได้เพียงเพราะมีความสามารถหนึ่งอยู่ และอย่าอ้างว่ารองรับทั้งหมดเพียงเพราะการโอนพื้นฐานของอีก mint หนึ่งสำเร็จ
หลังขาย ให้กระทบยอดเงินทุนที่ได้รับจริงและยอดโทเคนที่ถูกหัก ความต่างจากราคาเสนออาจเกิดได้หลายสาเหตุ เช่น พฤติกรรมการโอนที่ระบบรองรับ ค่าธรรมเนียม สถานะที่เปลี่ยนระหว่างทาง หรือการตีความผิดของระบบภายใน เก็บหลักฐานก่อนสรุปสาเหตุ หน้าที่ของตัวควบคุมการขายออกคือยืนยันว่าขณะนี้บัญชีถืออะไรและยังมีอะไรพร้อมใช้ ไม่ใช่จัดความคลาดเคลื่อนทุกแบบไว้ในหมวดความคลาดเคลื่อนของราคาทั่วไป
ไล่ตัวอย่างการขายบางส่วนด้วยบอตทำกำไรและตัดขาดทุนบน Solana
พิจารณาสถานะสมมติ 2,000 โทเคนที่มีฐานต้นทุนการได้มาครบถ้วน 80 หน่วย กฎขาย 500 โทเคนหลังผ่านเงื่อนไขกำไร สมมติยอดรับรวมจริงเป็น 25 หน่วย และการขายมีต้นทุนขายออกที่เกี่ยวข้อง 1 หน่วย เงินรับสุทธิจึงเป็น 24 หากจัดสรรฐานต้นทุนตามสัดส่วน โทเคนหนึ่งในสี่ที่ขายไปมีฐานต้นทุนการได้มา 20 หน่วย จึงเกิดกำไรที่รับรู้แล้ว 4 หน่วย
โทเคนที่เหลือ 1,500 ยังคงมีฐานต้นทุนการได้มา 60 หน่วยตามวิธีนี้ โทเคนเหล่านั้นไม่ได้กลายเป็นสินทรัพย์ไร้ต้นทุนเพียงเพราะการขายทำให้ได้รับเงินสดบางส่วน และความเสี่ยงในอนาคตก็ไม่ได้หายไป กลยุทธ์อาจติดตามแยกต่างหากว่าได้เงินสดเริ่มต้นคืนมาเท่าใด แต่ตัววัดกระแสเงินสดนี้ไม่ควรเขียนทับฐานต้นทุนทางบัญชี หรือสื่อว่าโทเคนที่เหลือจะไม่สูญเสียมูลค่า
ต่อมาสมมติว่าราคาเสนอที่ระบบรองรับสำหรับการขายส่วนที่เหลือทั้งหมดประเมินยอดรับ 50 หน่วย ก่อนหักต้นทุนขายออก 1 หน่วย หากดำเนินการได้ตรงตามสมมติฐาน เงินรับสุทธิ 49 จะทำให้ขาดทุน 11 หน่วยเมื่อเทียบกับฐานต้นทุนที่เหลือ 60 เมื่อนำมารวมกับกำไรเดิม 4 หน่วย ผลรวมของสถานะจะเป็นขาดทุน 7 หน่วย การทยอยทำกำไรจึงไม่ได้รับประกันว่าสถานะโดยรวมจะมีกำไร
ป้องกันไม่ให้การเริ่มระบบใหม่เรียกเงื่อนไขเก่าซ้ำ
หลังเริ่มระบบใหม่ ต้องกู้คืนปริมาณสถานะ เจตนาที่ยังค้าง ปริมาณที่กันไว้ และการดำเนินการตามเงื่อนไขที่เสร็จแล้ว ก่อนอนุญาตการขายใหม่ การสังเกตเห็นราคาเหนือเกณฑ์กำไรเดิมอีกครั้งต้องไม่ทำให้ขายซ้ำรายการที่เคยขายไปแล้วโดยอัตโนมัติ ให้บันทึกว่าเงื่อนไขนั้นใช้ได้ครั้งเดียว ใช้ซ้ำได้หลังรีเซ็ตตามที่กำหนด หรือเป็นส่วนหนึ่งของแผนหลายขั้นที่ระบุไว้ชัดเจน
ตัวระบุสถานะการลงทุนควรแยกสินทรัพย์ที่เพิ่งได้มาออกจากสถานะเก่าใน mint เดียวกันด้วย หากกลยุทธ์จัดการสองส่วนนี้แยกกัน มิฉะนั้นเงื่อนไขของสถานะเก่าที่ดำเนินการครบแล้วอาจปิดกั้นการทบทวนใหม่ที่ควรทำได้ หรือการรีเซ็ตอาจทำให้การดำเนินการเก่ากลับมาทำงานกับสินทรัพย์ผิดชุด ต้องรักษาความสัมพันธ์ระหว่างการได้มาของสินทรัพย์ ขอบเขตสถานะ และรุ่นของกฎ
ทดสอบการกู้คืนในจังหวะที่จัดการยาก ได้แก่ หลังกันปริมาณ หลังลงนาม หลังส่งธุรกรรม และหลังมีการจับคู่สำเร็จแต่ยังไม่ได้บันทึกไว้ในระบบภายใน ต้องกำหนดพฤติกรรมที่คาดหวังสำหรับแต่ละกรณี คู่มือวงจรการขายอัตโนมัติ อธิบายว่าการเก็บเจตนาอย่างคงทนและการกระทบยอดช่วยลดการดำเนินการซ้ำได้อย่างไร สำหรับตัวควบคุมกำไรและขาดทุนร่วมกัน ความคงทนนี้ยังรักษาความสัมพันธ์ด้านลำดับความสำคัญระหว่างเงื่อนไขที่แข่งขันกัน
ประเมินกฎใหม่หลังมีการเปลี่ยนบัญชีด้วยมือ
การขายด้วยมือ การโอน และการซื้อเพิ่มอาจเปลี่ยนปริมาณที่พร้อมใช้หรือฐานต้นทุน ขณะที่ระบบอัตโนมัติยังทำงานอยู่ ตัวควบคุมควรตรวจพบการเปลี่ยนแปลงเหล่านี้และใช้นโยบายกระทบยอดที่ระบุชัด ไม่ควรสมมติว่าการเปลี่ยนยอดทุกครั้งมาจากเจตนาที่ตนบันทึกไว้ และไม่ควรละเลยการเปลี่ยนแปลงจากภายนอกอย่างเงียบ ๆ เพียงเพราะการจัดสรรเดิมของกลยุทธ์ดูถูกต้อง
ตัวอย่างเช่น บัญชีสมมติโอนโทเคน 200 จากทั้งหมด 1,000 ไปยังอีกบัญชีที่อยู่ภายใต้การควบคุมเดียวกัน ขณะที่มีการกันไว้ 300 โทเคนสำหรับขายทำกำไร ปริมาณที่บัญชีเดิมพร้อมใช้ไม่ใช่ 700 อีกต่อไป หลังคิดการโอนและการกันปริมาณแล้ว จะเหลือ 500 หากไม่มีการเปลี่ยนแปลงอื่น พอร์ตในภาพกว้างอาจยังเป็นเจ้าของโทเคนที่โอนไป แต่ผู้ลงนามรายนี้ขายโทเคนเหล่านั้นจากบัญชีเดิมไม่ได้
วิธีตอบสนองที่เหมาะสมอาจเป็นการปรับปรุงสถานะ ขอให้ทบทวน หรือพักการขายออกใหม่จนกว่าจะเข้าใจการเปลี่ยนแปลง ให้เก็บการแทรกแซงด้วยมือไว้เป็นส่วนหนึ่งของบันทึกด้วย วิธีนี้ทำให้การวิเคราะห์ผลงานในภายหลังตรงตามจริง และป้องกันไม่ให้การตัดสินใจตามดุลยพินิจของผู้ดำเนินงานถูกรายงานผิดว่าเป็นความสำเร็จของเงื่อนไขอัตโนมัติ หรือเป็นการสูญหายของโทเคนที่อธิบายไม่ได้
ประเมินตัวควบคุมด้วยลำดับเหตุการณ์ที่ไม่เป็นผลดี
ชุดทดสอบที่มีประโยชน์ควรรวมราคาที่เพิ่มขึ้นอย่างราบรื่น ราคาที่กระโดดข้ามช่วงอย่างฉับพลัน เงื่อนไขกำไรที่ตามด้วยการกลับทิศ การไม่มีราคาเสนอ ความล้มเหลวที่ยังเสียค่าใช้จ่าย และใบรับธุรกรรมที่มาถึงล่าช้า เพิ่มกรณีเริ่มระบบใหม่ระหว่างการขายที่ยังไม่ทราบผล และการโอนด้วยมือที่เปลี่ยนปริมาณพร้อมใช้ จุดประสงค์คือยืนยันการเปลี่ยนสถานะและขอบเขตของตัวควบคุม ไม่ใช่สาธิตกราฟย้อนหลังที่ดูน่าสนใจ
รายงานผลตามขั้นตอนที่เกิดขึ้นจริง เงื่อนไขกระตุ้นที่ปฏิเสธราคาเสนอซึ่งยอมรับไม่ได้อย่างถูกต้องต่างจากข้อผิดพลาดในการสร้างธุรกรรม การขายที่ส่งไปแล้วแต่ยังไม่ทราบผลต่างจากการขายขาดทุนที่ยืนยันแล้ว ต้องรวมสินทรัพย์คงเหลือ ต้นทุนของความพยายามดำเนินการ และทรัพยากรที่ยังผูกไว้สำหรับการจัดการในอนาคตด้วย
การออกแบบบอตทำกำไรและตัดขาดทุนอัตโนมัติบน Solana จะเข้าใจได้เมื่อเงื่อนไขทุกข้อใช้หน่วยที่ประกาศไว้ การขายทุกครั้งใช้ปริมาณที่ทราบแน่นอน และผลทุกครั้งปรับปรุงบันทึกสถานะชุดเดียวที่สอดคล้องกัน โครงสร้างนี้ป้องกันตลาดที่เป็นผลร้ายไม่ได้ แต่ช่วยให้ผู้ดำเนินงานเห็นว่ากฎขอให้ทำอะไร เชนทำอะไรจริง และหลังจากนั้นยังเหลือความเสี่ยงเท่าใด