24 আগস্ট, 2026 · গবেষণা

আমার পেপার স্ট্র্যাটেজির তুলনায় ব্যাকটেস্টে বেশি ট্রেড হয় কেন?

আমার পেপার স্ট্র্যাটেজির তুলনায় ব্যাকটেস্টে বেশি ট্রেড হয় কেন?

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

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

আমার পেপার স্ট্র্যাটেজিতে ব্যাকটেস্টের চেয়ে কম ট্রেড হয় কেন?

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

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

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

অর্ডার পূরণ হওয়ার আগে সিগন্যাল বদলে গেলে ব্যাকটেস্টের কী করা উচিত?

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

এটি একটি ধারাবাহিক প্রক্রিয়া হিসেবে মডেল করুন: সিগন্যাল বদলায়, স্ট্র্যাটেজি বাতিলের অনুরোধ পাঠায়, ভেন্যু সেটি নিশ্চিত করে বা ফিলের খবর দেয়, তারপরই স্ট্র্যাটেজি অর্ডারের চূড়ান্ত অবস্থা জানতে পারে। নির্দিষ্ট একটি সাধারণ বিলম্বও তাৎক্ষণিক বাতিল ধরে নেওয়া ব্যাকটেস্টে লুকিয়ে থাকা রেস পরিস্থিতি প্রকাশ করতে পারে।

ইচ্ছাকৃতভাবে সরল একটি মডেলে, 1 সেকেন্ডের বাতিল-সংক্রান্ত বিলম্ব এবং পরের ইভেন্টে প্রক্রিয়াকরণকে তাৎক্ষণিক বাতিল ধরে নেওয়ার চেয়ে বেশি তথ্যবহ মনে হতে পারে। সঠিক বিলম্ব ভেন্যু ও সিস্টেমের ওপর নির্ভর করে; মূল কথা হলো, কোনো না কোনো বিলম্ব দেখানো। আপনার অর্ডার যদি বাতিল করার সুযোগহীন মার্কেট অর্ডার হয়, তবুও আংশিক ফিল ও দেরিতে আসা রিপোর্টের ক্ষেত্রে একই বিষয়টি গুরুত্বপূর্ণ।

পেপার ট্রেডিং সিমুলেটরে কোন অর্ডার স্টেটগুলো রেকর্ড করা উচিত?

একটি ছোট স্টেট মেশিন ব্যবহার করুন এবং প্রতিটি পরিবর্তনের সময় সংরক্ষণ করুন। ভেন্যুভেদে নির্দিষ্ট পরিভাষা বদলায়, তবে মূল পার্থক্যগুলো একই থাকে:

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

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

ব্যাকটেস্টের ট্রেডের সঙ্গে পেপার ট্রেডিংয়ের তুলনা ন্যায্যভাবে করব কীভাবে?

প্রথমে অর্ডার ইভেন্ট, তারপর পজিশন, সবশেষে P&L তুলনা করুন। ব্যাকটেস্টে এমন অর্ডার পূরণ হয়ে থাকলে যা পেপার অ্যাকাউন্টে কখনো পূরণ হয়নি, তাহলে পরের P&L-এর পার্থক্যটি হলো ফলাফল, ত্রুটি খুঁজে দেখার জায়গা নয়।

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

ছোট একটি উদাহরণে ধারাবাহিকতাটি পরিষ্কার হয়। সিগন্যাল 10 ইউনিট চায়। দুই সিস্টেমই 10:00:00-এ অর্ডার জমা দেয়। ব্যাকটেস্ট ধরে নেয়, 10:00:01-এ পুরো অর্ডার পূরণ হয়েছে। পেপার ট্রেডিংয়ে 10:00:01-এ 4 ইউনিট পূরণ হয়, 10:00:02-এ বাতিলের অনুরোধ আসে, তারপর 10:00:03-এ বাতিল নিশ্চিত হওয়ার আগে আরও 2 ইউনিট পূরণের খবর আসে। সঠিক তুলনা হলো 10 ইউনিটের বিপরীতে 6 ইউনিট পূরণ হয়েছে, 4 ইউনিট বাতিল হয়েছে। দুটিকে গড় করে একটি “ট্রেড” ধরলে স্ট্র্যাটেজি আসলে যে এক্সপোজার নিয়েছিল, তা আড়াল হয়ে যায়।

এটা ঠিকভাবে করতে কি আমার পূর্ণাঙ্গ এক্সচেঞ্জ সিমুলেটর দরকার?

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

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

এই কাজের ছোট্ট একটি আনন্দের বিষয় হলো: ভালো অর্ডার লগ এমন এক অমীমাংসিত অমিলকেও একঘেয়ে করে তুলতে পারে। “বাতিলের অনুরোধের পর দ্বিতীয় চাইল্ড অর্ডারটি পূরণ হয়েছে”—এ কথা “পেপার ট্রেডিং অদ্ভুত লাগছে”-এর চেয়ে অনেক বেশি কার্যকর। ব্যাকটেস্ট আর পেপার অ্যাকাউন্টে অমিল হলে, সিগন্যাল সম্পাদনার আগে অর্ডারের লাইফসাইকেল খতিয়ে দেখুন।

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