27 সেপ্টেম্বর, 2026 · গবেষণা

ব্যাকটেস্টে উত্তীর্ণ। পেপার স্ট্র্যাটেজিতে ৩৭% অর্ডার বাদ পড়ল।

ব্যাকটেস্টে উত্তীর্ণ। পেপার স্ট্র্যাটেজিতে ৩৭% অর্ডার বাদ পড়ল।

১০০টি পাঠানো অর্ডারের মধ্যে ব্যাকটেস্টে ৯১টি পূরণ হয়েছে বলে গণনা করা হয়েছিল। পেপার ট্রেডিংয়ে একই স্ট্র্যাটেজিতে পূরণ হয়েছিল ৬৩টি। সিগন্যাল থেকে অর্ডার স্বীকৃতি পর্যন্ত মধ্যম সময় ছিল ৮৪ মিলিসেকেন্ড, আর বাদ পড়া পেপার পূরণগুলোর মধ্যে ১২টি ছিল লিমিট অর্ডার—ব্যাকটেস্টে দাম ছুঁলেই যেগুলো পূরণ হয়েছে বলে ধরে নেওয়া হয়েছিল।

২৮ শতাংশ-পয়েন্টের এই ব্যবধানকে প্রথমে স্ট্র্যাটেজির সমস্যা মনে হয়েছিল। কিন্তু অর্ডার দেওয়ার সিদ্ধান্ত আর অর্ডার পূরণের সিদ্ধান্ত আলাদা করে দেখার পর ছবিটা বদলায়। দুই রানেই স্ট্র্যাটেজি প্রায় একই দিক, পরিমাণ ও দাম বেছে নিয়েছিল। পার্থক্য ছিল এক্সিকিউশনের পথে: কিছু অর্ডার দেরিতে পৌঁছেছিল, কিছু খোলা ছিল, আর কিছু এমন বাজারে পৌঁছেছিল যা এরই মধ্যে সরে গেছে।

ব্যাকটেস্ট ও পেপার অর্ডার-প্যারিটি বলতে কী বোঝায়?

প্যারিটি মানে, একই উপলভ্য তথ্য থেকে ব্যাকটেস্ট ও পেপার সিস্টেম তুলনীয় সিদ্ধান্ত নেবে এবং তাদের আলাদা এক্সিকিউশন মডেলগুলো স্পষ্টভাবে হিসাব করবে। এর মানে এই নয় যে প্রতিটি সিমুলেটেড পূরণ পেপার পূরণের সঙ্গে মিলতে হবে। ঐতিহাসিক বার থেকে কিউতে অবস্থান পুনর্গঠন করা যায় না, আর পেপার ভেন্যু লাইভ এক্সচেঞ্জের থেকে আলাদা ম্যাচিং মডেল ব্যবহার করতে পারে।

কাজের প্রশ্নটি আরও নির্দিষ্ট: স্ট্র্যাটেজি যে অর্ডার দিতে চেয়েছিল, তার প্রতিটির পর কী ঘটেছিল তা কি ব্যাখ্যা করতে পারেন? ট্রেডের সংখ্যা ও চূড়ান্ত রিটার্নে অনেক তথ্য আড়াল থাকে। প্রতিটি সিদ্ধান্তের জন্য একটি সংযুক্ত রেকর্ড রাখুন, যেখানে স্থায়ী strategy decision ID সিগন্যাল, অর্ডার, স্বীকৃতি, বাতিলকরণ ও পূরণের প্রতিটি ইভেন্টে বহন করা হবে।

তুলনাকী ধরা পড়েউদাহরণ
সিদ্ধান্তের সময় ও দিকইনপুট বা সময়সূচির পার্থক্যপেপার সিগন্যাল এক বার পরে আসে
চাওয়া পরিমাণ ও দামরাউন্ডিং, ঝুঁকি বা ভেন্যুর নিয়মব্যাকটেস্টে 0.013 BTC পাঠানো হয়; পেপারে রাউন্ড করে 0.01 করা হয়
অর্ডারের অবস্থার পরিবর্তনপাঠানো, প্রত্যাখ্যান ও বাতিলকরণের ব্যবধানব্যাকটেস্টে বাতিলের অনুরোধকে সম্পন্ন বলে ধরা হয়
পূরণের পরিমাণ ও দামপূরণ মডেলের অতিরিক্ত আশাবাদ বা বাজারের নড়াচড়াদাম ছুঁলে লিমিট অর্ডারটি ব্যাকটেস্টে পুরো পূরণ হয়, কিন্তু পেপারে হয় না

দাম-ছোঁয়া লিমিট অর্ডারগুলো এত বেশি বাদ পড়ল কেন?

আমাদের ব্যাকটেস্টে 1-minute বার ব্যবহার করা হয়েছিল। কোনো লিমিট দাম বারের সর্বোচ্চ ও সর্বনিম্ন দামের মধ্যে পড়লে, অর্ডারটি পূরণ হয়েছে বলে ধরা হতো। এই নিয়ম শুধু বলে, ওই মিনিটের কোনো এক সময়ে বাজারে সেই দামে লেনদেন হয়েছিল কি না। তখন আমাদের অর্ডারটি সক্রিয় ছিল কি না, কিউতে সেটি সবার আগে ছিল কি না, কিংবা অর্ডার পৌঁছানোর পর পর্যাপ্ত পরিমাণে লেনদেন হয়েছিল কি না—এসবের উত্তর এটি দেয় না।

পেপার লগে সময়ের সমস্যাটি স্পষ্ট হয়। স্ট্র্যাটেজি 12:03:00.000-এ সিগন্যাল হিসাব করেছিল, কিন্তু বাজারের ডেটা ইভেন্ট অর্ডার প্রসেসে পৌঁছায় 31 মিলিসেকেন্ড পরে। ঝুঁকি যাচাইয়ে আরও 22 মিলিসেকেন্ড লাগে, আর ভেন্যু সিমুলেটর তার 31 মিলিসেকেন্ড পর অর্ডার স্বীকার করে। বাজার দ্রুত সরে গেলে, ঐতিহাসিক বারে কোনো দাম নাগালের মধ্যে মনে হতে পারে, যদিও লিমিট অর্ডার পৌঁছানোর আগেই বাজার সেই দাম ছেড়ে চলে গেছে।

আরও একটি জটিলতা ছিল: ব্যাকটেস্ট এগিয়ে গেলেও ১২টি পেপার অর্ডার তখনও খোলা ছিল। সিমুলেটর বাতিলের অনুরোধ গ্রহণ করেই অর্ডারটি সঙ্গে সঙ্গে অদৃশ্য হয়েছে বলে ধরে নিয়েছিল। পেপার সিস্টেমে বাতিলের স্বীকৃতি পরে এসেছিল; সেই মধ্যবর্তী সময়ে তিনটি অর্ডার পূরণ হয়। ফলে পরের সিগন্যাল যে পজিশন দেখেছিল, সেটি বদলে যায়।

নিজেকে ভুল না বুঝিয়ে ব্যবধানটা কীভাবে মাপব?

অর্ডারের অভিপ্রায় অনুযায়ী সাজানো একটি ছোট সমন্বয় প্রতিবেদন দিয়ে শুরু করুন। হরটি স্পষ্ট রাখুন। “পূরণের হার” বলতে পাঠানো অর্ডারের মধ্যে পূরণ হওয়া অর্ডারের অনুপাত, চাওয়া পরিমাণের মধ্যে পূরণ হওয়া পরিমাণের অনুপাত, অথবা ভেন্যুতে পৌঁছানো অর্ডারের মধ্যে পূরণ হওয়া অর্ডারের অনুপাত বোঝাতে পারে। প্রতিটি আলাদা প্রশ্নের উত্তর দেয়।

  1. পরে অনুমান করে বেছে নেওয়া টাইমস্ট্যাম্প দিয়ে নয়, সিদ্ধান্ত ID বা ক্লায়েন্ট অর্ডার ID দিয়ে ইভেন্টগুলো জুড়ুন।
  2. আগে সিদ্ধান্তগুলো তুলনা করুন: সিগন্যালের সময়, দিক, চাওয়া পরিমাণ, অর্ডারের ধরন এবং লিমিট দাম।
  3. যেসব সিদ্ধান্ত মেলে, সেগুলোর স্বীকৃতিতে বিলম্ব, প্রত্যাখ্যান, খোলা থাকার সময়, বাতিলের সময়, পূরণ হওয়া পরিমাণ এবং ভলিউম-ওয়েটেড পূরণ দাম তুলনা করুন।
  4. অর্ডারের ধরন ও বাজারের অবস্থা অনুযায়ী হার দেখান। সামগ্রিক ৬৩% পূরণ হার আড়াল করতে পারে যে মার্কেট অর্ডারে হার ৯০%, আর প্যাসিভ লিমিট অর্ডারে ৩৫%।

বিভাগগুলো স্পষ্টভাবে আলাদা রাখুন। প্রত্যাখ্যাত অর্ডার অপূর্ণ অর্ডার নয়; আংশিক পূরণ হওয়া অর্ডার পূর্ণ পূরণ নয়; আর আংশিক পূরণের পর বাতিল হওয়া অর্ডারও পজিশন বদলেছে। অর্ডারের সংখ্যা ও চাওয়া পরিমাণ—দুটিই গুনুন, যাতে অল্প পরিমাণের অর্ডারের জট ফলকে বাস্তবের চেয়ে ভালো না দেখায়।

91%ব্যাকটেস্টে অর্ডার পূরণের হার
63%পেপারে অর্ডার পূরণের হার
28 ppযে ব্যবধান খতিয়ে দেখতে হবে

ব্যাকটেস্টে কী বদলানো উচিত?

ডেটার রেজোলিউশন ও অর্ডারের উদ্দেশ্যপ্রণোদিত আচরণের সঙ্গে মেলে এমন পূরণ নিয়ম ব্যবহার করুন। বার ডেটায় কোনো লিমিটের দাম ছোঁয়া হলে সেটি সম্ভাব্য পূরণের ইঙ্গিত, প্রমাণ নয়। আপনি সতর্কভাবে আংশিক পূরণ মডেল করতে পারেন, দাম অতিক্রম করা আবশ্যক করতে পারেন, অথবা কিউতে অবস্থান অনুমান করা যায় না এমন প্যাসিভ অর্ডার বাদ দিতে পারেন। প্রতিটি পছন্দের উত্তর আলাদা; নিয়মটি নথিভুক্ত করুন এবং একাধিক যুক্তিসংগত নিয়মে ফল তুলনা করুন।

অর্ডারের অবস্থাও মডেল করুন। সিস্টেম চূড়ান্ত ইভেন্ট না পাওয়া পর্যন্ত অর্ডার সক্রিয় থাকে, আর বাতিলের অনুরোধ ঝুঁকির পরিমাণ মুছে দেয় না। প্রথম অর্ডারটির উত্তর আসার অপেক্ষায় থাকতেই স্ট্র্যাটেজি যদি দ্বিতীয় অর্ডার দিতে পারে, তাহলে ব্যাকটেস্টে সেই সময়ের প্রতিযোগিতা দেখাতে হবে, অথবা নকশার মাধ্যমেই তা আটকাতে হবে।

পূরণ মডেল হলো আপনার অর্ডার কী করতে পারত, সে সম্পর্কে একটি দাবি। এমন নিয়ম দিন যা ব্যাখ্যা করতে পারেন, তারপর পেপার লগের সঙ্গে মিলিয়ে দেখুন।

আমাদের ২৮ শতাংশ-পয়েন্ট ব্যবধানের ক্ষেত্রে অবাক করা বিষয় ছিল না যে মিনিট-বারের ব্যাকটেস্টে প্যাসিভ পূরণ বেশি দেখানো হয়েছে। বরং পরের সিদ্ধান্তের আগেই স্ট্র্যাটেজির পজিশন যে আলাদা হয়ে গিয়েছিল, তার কারণ ছিল বাতিলের সময় বাদ পড়া। অর্ডারের অবস্থার মডেল ঠিক করার পর এবং দাম-ছোঁয়া প্রতিটি লিমিটকে পূরণ হিসেবে ধরা বন্ধ করলে পেপার তুলনা কম আশাব্যঞ্জক, কিন্তু বেশি কার্যকর হয়েছে।

প্যারিটির বাস্তব মাপকাঠি হলো: সিমুলেটেড ও পেপার আচরণের প্রতিটি অর্থবহ পার্থক্যের নথিভুক্ত কারণ থাকবে, আর ব্যাকটেস্ট এমন নিশ্চয়তার দাবি করবে না যা তার ডেটা দিতে পারে না।

পেপার ট্রেডিংঅর্ডার ব্যবস্থাপনাব্যাকটেস্টিংএক্সিকিউশনট্রেডিং সিস্টেম
শেয়ার করুনXLinkedInFacebookRedditHacker NewsWhatsAppTelegramEmail
← সব পোস্ট