Calibrain Harness কী?
Calibrain Harness হলো উচ্চ-গতির শ্রেণিবিন্যাস মডেলের জন্য একটি ওপেন-সোর্স ফরোয়ার্ড-টেস্টিং সিস্টেম। এটি একটি সমর্থিত মডেলকে পারপেচুয়াল ফিউচার্স মার্কেট ডেটার সঙ্গে যুক্ত করে, প্রতিটি বন্ধ বারে লেবেলযোগ্য প্রশ্ন করে, ফেরত পাওয়া সম্ভাবনাগুলোকে প্রত্যাশিত মূল্যে রূপান্তর করে এবং যোগ্য ট্রেডগুলো ঐচ্ছিকভাবে শুধু Bybit testnet-এ সম্পাদন করে।
প্রকল্পটি দুটি সম্পর্কিত টুল একত্র করে: একটি ট্রেডিং বট এবং একটি মডেল-মূল্যায়ন হারনেস। প্রতিটি পূর্বাভাস সংরক্ষণ করা হয় এবং পরে বাজারের ফলাফলের সঙ্গে তুলনা করা হয়, যেসব পূর্বাভাস থেকে কোনো ট্রেড হয়নি সেগুলোও এর অন্তর্ভুক্ত। এতে ফি, স্লিপেজ, এক্সিকিউশন ও নীতিমালার প্রভাব থেকে মডেলের গুণমান আলাদা করে দেখা যায়।
গুরুত্বপূর্ণ: Calibrain Harness সক্রিয় উন্নয়নাধীন এবং এটি গবেষণামূলক সফটওয়্যার, আর্থিক পরামর্শ নয়। এর ট্রেডিং হোস্ট Bybit testnet-এ হার্ড-কোড করা এবং mainnet ব্যবহারের কোনো সুইচ নেই। কমিটভেদে ইন্টারফেস, ডিফল্ট ও প্রশ্নের সেট পরিবর্তিত হতে পারে।
সিস্টেমটি যেভাবে কাজ করে
মডেলকে “কিনুন, বিক্রি করুন, নাকি ধরে রাখুন” জিজ্ঞেস করার বদলে হারনেস এমন প্রশ্ন করে, যেগুলোর উত্তর পরবর্তী মূল্য-ডেটা থেকে বস্তুনিষ্ঠভাবে লেবেল করা যায়। একটি উদাহরণ হলো নির্দিষ্ট সময়সীমায় কোন সীমাটি আগে স্পর্শ করা হবে: একটি ইতিবাচক টার্গেট নাকি একটি নেতিবাচক স্টপ।
- Mainnet-এর পাবলিক মার্কেট ডেটা, সংবাদ, ম্যাক্রো প্রেক্ষাপট, অর্ডার-বুক তথ্য ও ডেরিভেটিভস ডেটা সংগ্রহ করা হয়।
- ফিচার বিল্ডার একটি সংক্ষিপ্ত, একক-লেবেলযুক্ত স্টেট তৈরি করে এবং সংশ্লিষ্ট ইনস্ট্রুমেন্ট ও ব্র্যাকেটের ঐতিহাসিক বেস রেট যোগ করে।
- Kairos বা Jev স্টেট এবং টাইপ-নির্ধারিত, লেবেলযোগ্য সাতটি প্রশ্ন পায়।
- উত্তর কঠোরভাবে যাচাই করা হয়। অবৈধ উত্তরকে নেতিবাচক পূর্বাভাস হিসেবে ব্যাখ্যা না করে ত্রুটি হিসেবে রেকর্ড করা হয়।
- ক্যালিব্রেশন স্তরের মাধ্যমে মডেলের সম্ভাবনাগুলো ঐতিহাসিক বেস রেটের সঙ্গে মিশ্রিত করা হয়।
- পলিসি R-এ প্রত্যাশিত মূল্য গণনা করে, এন্ট্রি গেট প্রয়োগ করে এবং ঝুঁকির পরিমাণ নির্ধারণ করে।
- স্বয়ংক্রিয় ট্রেডিং চালু থাকলে যোগ্য অর্ডার Bybit testnet-এ পাঠানো হয়।
- মূল্যায়ন ও রিপোর্টিংয়ের জন্য অনুরোধ, উত্তর, লেবেল, রান ও ট্রেড SQLite-এ সংরক্ষণ করা হয়।
সিগন্যাল ও লেবেলের জন্য mainnet ডেটা ব্যবহার করা হয়, কারণ testnet-এর মার্কেট ডেটা কৃত্রিম বা ভিন্ন হতে পারে। তবে অর্ডার একচেটিয়াভাবে testnet-এ দেওয়া হয় এবং সেখানে উপলভ্য বুকের গভীরতা অনুযায়ী পরিমাণ নির্ধারিত হয়।
মূল বৈশিষ্ট্য
একাধিক শ্রেণিবিন্যাস মডেল
হারনেস বর্তমানে Kairos সমর্থন করে, যা Minara Cloud-এর মাধ্যমে DMind সরবরাহ করে, এবং Jev সমর্থন করে, যা TypeSafe সরবরাহ করে। উভয় মডেল একই System One অনুরোধের ধরন, প্রশ্নের সেট, যাচাই, পলিসি ও মূল্যায়ন পাইপলাইন ব্যবহার করে।
সিদ্ধান্ত, ক্যালিব্রেশন ওজন, মূল্যায়ন এবং রিপোর্ট মডেলভেদে আলাদা থাকে। লাইভ মডেল পরিবর্তন করলে নতুন রান শুরু হয় এবং বট ফ্ল্যাট থাকা অবস্থাতেই তা অনুমোদিত, যাতে বিভিন্ন মডেলের ফলাফল মিশে না যায়।
ব্লুমবার্গ-ধাঁচের টার্মিনাল
Next.js টার্মিনাল একটি WebSocket-এর মাধ্যমে লাইভ আপডেট গ্রহণ করে। এতে চার্ট, মডেল সিগন্যাল, ক্যালিব্রেটেড ও কাঁচা প্রত্যাশিত মূল্য, পজিশন, অ্যাকাউন্টের তথ্য, অর্ডার-বুক ও গভীরতার ভিউ, মার্কেট ম্যাপ, সংবাদ, লিকুইডেশন, ডেরিভেটিভস ডেটা এবং প্রতিটি মডেল অনুরোধ ও উত্তরসহ একটি সিদ্ধান্ত ব্লটার দেখা যায়।
অন্তর্নির্মিত ক্যালিব্রেশন ও মূল্যায়ন
Calibrain Harness w · model + (1 − w) · base rates সূত্র ব্যবহার করে মডেলের সম্ভাবনাগুলো ইনস্ট্রুমেন্ট-নির্দিষ্ট বেস রেটের সঙ্গে মিশ্রিত করে। ওজন 0.5 থেকে শুরু হয় এবং কোনো প্রশ্নে অন্তত 100টি লেবেলযুক্ত ফলাফল জমা হলে প্রতি 15 মিনিটে পুনরায় ফিট করা হয়।
মূল্যায়নের মধ্যে রয়েছে Brier ও ranked probability score, climatology ও সরবরাহকৃত বেস রেটের বিপরীতে দক্ষতা, AUC, reliability, expected calibration error, probability integral transform বিশ্লেষণ, EV ranking, consistency probe, এক্সিকিউশনের গুণমান এবং প্রতিটি রানের ট্রেডিং ফলাফল।
Testnet এক্সিকিউশন নিয়ন্ত্রণ
এন্ট্রিতে সেরা testnet মূল্যের তুলনায় সীমাবদ্ধ IOC limit order ব্যবহার করা হয়। টার্গেট reduce-only limit হিসেবে সক্রিয় থাকতে পারে, আর managed stop mainnet-এর executable price ব্যবহার করে ট্রিগার হয় এবং testnet-এ সীমাবদ্ধ reduce-only IOC order দিয়ে বন্ধ করা হয়। সিস্টেমে time stop, mark-price backstop, দৈনিক ক্ষতির সীমা, position cap, portfolio risk limit এবং kill switch-ও রয়েছে।
পূর্বশর্ত
ইনস্টলেশনের আগে নিচের বিষয়গুলো প্রস্তুত করুন:
- Python 3.12।
- npm-সহ Node.js 20 বা নতুন সংস্করণ।
- Minara Cloud থেকে Kairos API key অথবা TypeSafe console থেকে Jev API key।
- Bybit testnet API management থেকে Bybit testnet API credential।
Bybit key-তে অর্ডার ও পজিশনের জন্য Contract permission থাকা উচিত। Withdrawal permission দেবেন না।
Calibrain Harness ইনস্টল করুন
১. রিপোজিটরি ক্লোন করুন
git clone https://github.com/zadescoxp/calibrain-harness.git
cd calibrain-harness
২. Python পরিবেশ তৈরি করুন
Python 3.12 ভার্চুয়াল পরিবেশ তৈরি করুন, নির্ভরতা ইনস্টল করুন এবং উদাহরণ কনফিগারেশন কপি করুন:
python3.12 -m venv .venv
.venv/bin/pip install -r requirements.txt
cp .env.example .env
.env-এ credential যোগ করুন, অথবা পরে টার্মিনালের KEYS কমান্ডের মাধ্যমে লিখুন। অ্যাপ্লিকেশনটি এই ফাইল থেকে key পড়ে; ফাইলটি gitignore করা এবং শুধু মালিকের ব্যবহারের permission থাকা প্রত্যাশিত। key ডেটাবেসে সংরক্ষণ করা হয় না এবং সম্পূর্ণ অবস্থায় ব্রাউজারে পাঠানো হয় না।
৩. টার্মিনাল UI বিল্ড করুন
cd web-next
npm ci
npm run build
cd ..
এতে web-next/out-এ স্ট্যাটিক টার্মিনাল তৈরি হয়। Python service UI, API ও WebSocket পরিবেশন করে, তাই আলাদা production Node.js process প্রয়োজন হয় না।
৪. সার্ভিস চালু করুন
.venv/bin/python -m ctb.server
http://127.0.0.1:8800 খুলুন। সার্ভারটি স্থানীয়ভাবে 127.0.0.1-এ সংযুক্ত থাকে এবং ক্রস-অরিজিন রাইট প্রত্যাখ্যান করে।
UI তৈরি না হয়ে থাকলে, ঠিকানাটিতে বিল্ড কমান্ডসহ একটি সংক্ষিপ্ত পৃষ্ঠা প্রদর্শিত হবে। API এবং লাইভ WebSocket চালু থাকবে।
মডেল ও ক্রেডেনশিয়াল কনফিগার করুন
.env-এ CTB_MODEL_PROVIDER ব্যবহার করে Kairos বা Jev নির্বাচন করুন:
CTB_MODEL_PROVIDER=kairos
KAIROS_API_KEY=your_kairos_key
Jev-এর জন্য ব্যবহার করুন:
CTB_MODEL_PROVIDER=jev
TYPESAFE_API_KEY=your_typesafe_key
CTB_JEV_MODEL=jev-1.14.0
নথিভুক্ত Jev মডেলটি jev-1.14.0-এ নির্ধারিত, তবে CTB_JEV_MODEL দিয়ে এটি পরিবর্তন করা যায়। Kairos ক্রেডেনশিয়াল অবশ্যই Kairos-সক্ষম Minara Cloud গ্রুপের হতে হবে।
.env.example-এ দেওয়া ভেরিয়েবল নাম ব্যবহার করে Bybit টেস্টনেট ক্রেডেনশিয়াল যোগ করুন। কখনো .env বা data/-এর অধীন কোনো ফাইল কমিট করবেন না।
প্রথমে শুধু পর্যবেক্ষণ মোডে চালান
বট কোনো অর্ডার না দিয়েই চালু হয়। এই মোডে এটি বাজারের তথ্য সংগ্রহ, নির্বাচিত মডেলকে কল করা, সিদ্ধান্ত রেকর্ড করা এবং পূর্বাভাসে লেবেল যোগ করা চালিয়ে যায়। শুরু করার জন্য এটিই সুপারিশ করা হয়, কারণ এতে টেস্টনেট পজিশন খোলা ছাড়াই সংযোগ যাচাই এবং মডেলের আচরণ পর্যালোচনা করা যায়।
- Python সার্ভিস চালু করুন।
127.0.0.1:8800-এ টার্মিনাল খুলুন।- বাজারের তথ্য ও মডেলের সিদ্ধান্ত দেখা যাচ্ছে কি না নিশ্চিত করুন।
- LOG ও EVAL স্ক্রিনে ত্রুটি এবং লেটেন্সি পর্যালোচনা করুন।
- সেটআপ সঠিকভাবে কাজ করছে নিশ্চিত হওয়ার পরই AUTO-TRADE চালু করুন।
টার্মিনাল ব্যবহার করুন
প্রধান স্ক্রিন
- MON, F1: ওয়াচলিস্ট, চার্ট, মডেল মার্কার, অ্যাকাউন্ট, পজিশন, মার্কেট ম্যাপ, অর্ডার বুক, নিউজ, ডেরিভেটিভস, ফ্লো ডেটা এবং সিদ্ধান্তের ব্লটার প্রদর্শন করে।
- EVAL, F2: ক্যালিব্রেশন, ফলাফল, EV র্যাঙ্কিং, প্রশ্নের স্কোর, কনসিস্টেন্সি প্রোব, অপারেশনাল মেট্রিক, P&L এবং এক্সিকিউশন কোয়ালিটি দেখায়। ফলাফল মডেল, রান, সিম্বল, প্রশ্নসেট এবং সময়সীমা অনুযায়ী ফিল্টার করা যায়।
- TRADES, F3: রেফারেন্স মূল্য, ফিল, স্লিপেজ এবং সঠিক R-সহ পৃথক রান ও ট্রেডের তালিকা দেখায়।
- NEWS, F4: হেডলাইন এবং Kairos
news_returnপূর্বাভাস দেখায়। নিউজ-রিটার্ন পূর্বাভাস কেবল Kairos-এর সঙ্গে উপলভ্য। - LOG, F5: সিস্টেম ইভেন্ট ও ত্রুটি প্রদর্শন করে।
কমান্ড-লাইন উদাহরণ
টার্মিনাল কমান্ড লাইন খুলতে / চাপুন। সাধারণ কমান্ডগুলোর মধ্যে রয়েছে:
- সিম্বল লোড করতে
BTCবাETH। - তাৎক্ষণিকভাবে মডেলকে জিজ্ঞাসা করতে এবং কনসিস্টেন্সি প্রোব চালাতে
ASKবাPRB। - চার্টের সময়সীমা পরিবর্তন করতে
1Mথেকে4H। - ট্রেডিং সময়সীমা নির্ধারণ করতে
TF 5M। - সিম্বল ইউনিভার্স বেছে নিতে
UNIV। - সর্বাধিক পজিশনের সংখ্যা নির্ধারণ করতে
POS 10। - ক্রেডেনশিয়াল পরিচালনা করতে
KEYS। - টার্মিনাল সহায়তা প্রদর্শন করতে
HELP।
ফাংশন-কী বারে MODEL ব্যবহার করে Kairos ও Jev-এর মধ্যে পরিবর্তন করতে পারেন। পরিবর্তন করার আগে বটের কোনো খোলা পজিশন থাকা চলবে না।
সতর্কতার সঙ্গে টেস্টনেট ট্রেডিং চালু করুন
সিদ্ধান্ত পর্যবেক্ষণ এবং সেটআপ যাচাই করার পর, টেস্টনেট অর্ডারের অনুমতি দিতে কমান্ড বারে AUTO-TRADE ব্যবহার করুন। স্ট্রিক্ট মোডে কেবল তখনই ট্রেড হয়, যখন ক্যালিব্রেটেড পূর্বাভাস সব কনফিগার করা গেট পাস করে; এর মধ্যে রয়েছে ন্যূনতম প্রত্যাশিত মূল্য, সেটআপের মান, দিকনির্দেশের সম্মতি, রিটার্ন-বণ্টনের সম্মতি, ভেন্যু বিচ্যুতি, পজিশনের অবস্থা এবং শর্ট-সাইড অনুমতি।
এক্সপ্লোরেশন মোড ডিফল্টভাবে নিষ্ক্রিয়। CTB_EXPLORATION=1 সেট করলে স্ট্রিক্ট গেটগুলো বাধা দিলেও সিস্টেম কম ঝুঁকিতে মডেলের পছন্দের দিকে ট্রেড করতে পারে। এর উদ্দেশ্য বাস্তব এক্সিকিউশন ডেটা সংগ্রহ করা, স্ট্রিক্ট নীতি ইতিবাচক এজ খুঁজে পেয়েছে এমন ইঙ্গিত দেওয়া নয়।
টেস্টনেটের লিকুইডিটি অত্যন্ত কম হতে পারে এবং মেইননেটের তুলনায় ভিন্ন আচরণ করতে পারে। প্রকল্পের প্রাথমিক ফরোয়ার্ড টেস্টে দেখা গেছে, এক্সিকিউশন কোয়ালিটি টেস্টনেট P&L-কে প্রভাবিত করতে পারে। টেস্টনেটের ফলাফলকে ভবিষ্যৎ লাভজনকতার প্রমাণ নয়, বরং গবেষণার তথ্য হিসেবে বিবেচনা করুন।
কিল সুইচ ব্যবহার করুন
টার্মিনালের KILL বোতাম বটের পজিশন বন্ধ করে, অর্ডার বাতিল করে এবং সিস্টেম থামিয়ে দেয়। প্রকল্প ডিরেক্টরি থেকেও একই কাজ চালানো যায়:
touch KILL
টেস্টনেটে হাতে খোলা পজিশনগুলো সাধারণত প্রদর্শিত হয়, কিন্তু বট সেগুলো পরিচালনা করে না। কিল সুইচ এর নথিভুক্ত ব্যতিক্রম।
টেস্ট ও স্মোক চেক চালান
নেটওয়ার্ক অ্যাক্সেস ছাড়াই ইউনিট টেস্ট চালান:
.venv/bin/python -m pytest -q tests
সক্রিয় মডেলে একটি বাস্তব অনুরোধ পাঠিয়ে তার উত্তর যাচাই করুন:
.venv/bin/python scripts/kairos_smoke.py SOLUSDT
স্পষ্টভাবে Jev লক্ষ্য করুন:
.venv/bin/python scripts/kairos_smoke.py SOLUSDT --model jev
একটি লং পজিশন খুলে, স্টপ যাচাই করে এবং সেটি বন্ধ করে ন্যূনতম-সাইজের টেস্টনেট এক্সিকিউশন পথ পরীক্ষা করুন:
.venv/bin/python scripts/testnet_smoke.py SOLUSDT long
এই স্মোক স্ক্রিপ্টগুলো বাস্তব বাহ্যিক অনুরোধ করে, তাই চালানোর আগে নির্বাচিত সিম্বল ও ক্রেডেনশিয়াল যাচাই করুন।
গুরুত্বপূর্ণ কনফিগারেশন অপশন বুঝে নিন
সিদ্ধান্তের সময় ও ব্র্যাকেট
CTB_DECISION_TF-এর ডিফল্ট মান 5, অর্থাৎ বন্ধ হওয়া পাঁচ-মিনিটের বারে সিদ্ধান্ত নেওয়া হয়।CTB_HORIZON_BARS-এর ডিফল্ট মান 24, যা ডিফল্ট টাইমফ্রেমে দুই ঘণ্টার হরাইজন তৈরি করে।- স্টপের আকার নির্ধারণের জন্য
CTB_ATR_TF-এর ডিফল্ট মান 15। CTB_SL_ATRএবংCTB_TP_ATR-এর ডিফল্ট মান যথাক্রমে 1.5 এবং 2.5 ATR।CTB_MIN_SL_BPএবংCTB_MAX_SL_BPডিফল্টভাবে স্টপের দূরত্ব 40–300 বেসিস পয়েন্টের মধ্যে সীমাবদ্ধ রাখে।
কঠোর নীতিগত গেট
CTB_MIN_EDGE_R=0.15ডিফল্ট ন্যূনতম ক্যালিব্রেটেড এজ নির্ধারণ করে।CTB_MIN_SETUP_QUALITY=1.5সেটআপের গুণমানের সীমা নিয়ন্ত্রণ করে।CTB_MIN_DIRECTION_MARGIN=0.03নির্দিষ্ট মার্জিন অনুযায়ী ক্যালিব্রেটেড দিককে প্রস্তাবিত সাইডের সঙ্গে একমত হতে বাধ্য করে।
ঝুঁকির সীমা
CTB_RISK_PER_TRADE_PCT=0.5স্টপ হিট করলে ইকুইটির যে শতাংশ হারানোর লক্ষ্য নির্ধারিত হয়, তা সংজ্ঞায়িত করে।CTB_MAX_POSITIONS,CTB_MAX_SAME_SIDE, এবংCTB_MAX_OPEN_RISK_PCTপোর্টফোলিওর এক্সপোজার সীমাবদ্ধ করে।CTB_MAX_LEVERAGE=3এবংCTB_MAX_NOTIONAL_USDT=5000ডিফল্টভাবে কঠোর সর্বোচ্চ সীমা প্রদান করে।CTB_DAILY_LOSS_LIMIT_PCT=3ডিফল্ট দৈনিক ক্ষতির সীমা নির্ধারণ করে।
খরচ ও এক্সিকিউশন
CTB_TAKER_FEE_BP=5.5এবংCTB_SLIPPAGE_BP=2প্রত্যাশিত মূল্য এবং লেবেলের জন্য ব্যবহৃত খরচের মডেলে তথ্য সরবরাহ করে।CTB_MAX_ENTRY_SLIP_BP=10ডিফল্ট এন্ট্রি-দামের সর্বোচ্চ সীমা নির্ধারণ করে।CTB_EXIT_MODE=managedনথিভুক্ত ম্যানেজড এক্সিট প্রক্রিয়া সক্রিয় করে।
একবারে একদল সেটিং পরিবর্তন করুন এবং নীতিগুলোর তুলনা করার সময় নতুন রান শুরু করুন। প্রতিটি রান তার কনফিগারেশনের স্ন্যাপশট সংরক্ষণ করে, ফলে পরবর্তী বিশ্লেষণ সহজ হয়।
উন্নত মূল্যায়ন টিপস
মডেলকে এর বেসলাইনের সঙ্গে তুলনা করুন
লাভজনক দেখালেই কোনো পূর্বাভাস স্বয়ংক্রিয়ভাবে কার্যকর হয় না। মডেলটি ক্লাইমেটোলজি এবং এর ইনপুটে অন্তর্ভুক্ত সঠিক ঐতিহাসিক বেস রেটকে ছাড়িয়ে যায় কি না তা পর্যালোচনা করুন। লেবেল করা ফলাফল দেখায় যে মডেলটি সামান্য তথ্য যোগ করছে, তাই ক্যালিব্রেশন স্তরটি মডেলের প্রভাব কমিয়ে দেয়।
পূর্বাভাসের দক্ষতা ও ট্রেডিং ফলাফল আলাদা করুন
শুধু ট্রেড নয়, সব লেবেল করা সিদ্ধান্ত পর্যালোচনা করতে EVAL ব্যবহার করুন। পূর্বাভাসের মেট্রিক মডেলের সম্ভাব্যতাভিত্তিক দক্ষতা পরিমাপ করে, আর টেস্টনেট P&L মডেল, নীতি, খরচ, ঝুঁকি নির্ধারণ এবং এক্সিকিউশনের সম্মিলিত প্রভাব পরিমাপ করে।
ওভারল্যাপ হওয়া সিদ্ধান্ত বিবেচনায় নিন
লুক-অ্যাহেড প্রতিরোধ করতে প্রতিটি সিদ্ধান্তের পরের প্রথম এক-মিনিটের বার থেকে লেবেল শুরু হয়। কোনো একটি বারে টার্গেট ও স্টপ দুটিই স্পর্শ করলে লেবেলটি সেটিকে স্টপ হিসেবে গণনা করে। তবে পরপর নেওয়া সিদ্ধান্তগুলোর হরাইজন ওভারল্যাপ করতে পারে, তাই কাঁচা নমুনা সংখ্যা পরিসংখ্যানগত স্বাধীনতাকে অতিরিক্ত দেখাতে পারে। সিদ্ধান্তে পৌঁছানোর আগে প্রতি সিম্বলের জন্য কয়েক শ লেবেল করা সিদ্ধান্তের অপেক্ষা করার পরামর্শ README-তে দেওয়া হয়েছে।
সামঞ্জস্য পরীক্ষা করুন
ডিটারমিনিজম পরিমাপ করতে রিপিট প্রোব ব্যবহার করুন এবং বুলিশ ও বেয়ারিশ মার্কেট ফিচার উল্টালে মডেলের উত্তর যথাযথভাবে পরিবর্তিত হয় কি না তা নির্ধারণ করতে মিরর প্রোব ব্যবহার করুন। একটি বিচ্ছিন্ন মেট্রিকের ওপর নির্ভর না করে লং ও শর্টের সামঞ্জস্যও পর্যালোচনা করুন।
রিপোর্ট রপ্তানি করুন
EVAL থেকে EXPORT MINARA REPORT ব্যবহার করে মূল্যায়নের ফলাফলসহ একটি Markdown রিপোর্ট লিখুন। তুলনা ব্যাখ্যা করার আগে মডেল, রান, সিম্বল, প্রশ্ন সেট বা টাইমফ্রেম অনুযায়ী ফিল্টার করুন।
সিম্বল ও রান পরিচালনা
UNIV কমান্ডটি টার্নওভারের ভিত্তিতে শীর্ষ 100টি USDT perpetual-এর তালিকা দেয়, যেগুলোর টেস্টনেট লিস্টিংও রয়েছে। এতে ডেপথ ও স্প্রেডের তথ্য থাকে এবং পাতলা অর্ডার বুক ও স্টক বা কমোডিটি perpetual চিহ্নিত করা হয়। মডেলের রিকোয়েস্ট বাজেটের অধীনে আপনি সর্বোচ্চ 30টি সিম্বল নির্বাচন করতে পারবেন। ইউনিভার্স পরিবর্তন প্রয়োগ করতে সার্ভিসটি নিজে পুনরায় চালু হয়।
প্রতিটি সিদ্ধান্ত ও ট্রেড একটি সক্রিয় রানের সঙ্গে যুক্ত থাকে। প্রোগ্রামেটিকভাবে রান তৈরি করতে কোনো বট ট্রেড খোলা না থাকলে POST /api/runs/start পাঠান। মডেল, প্রশ্ন, ঝুঁকির নিয়ম বা এক্সিকিউশন সেটিং পরিবর্তনের সময় আলাদা রান শুরু করা কার্যকর।
UI নিয়ে কাজ করা
পরিবর্তন পুল করার বা ফ্রন্টএন্ড সম্পাদনা করার পর স্ট্যাটিক এক্সপোর্ট পুনর্নির্মাণ করুন:
cd web-next && npm run build
এরপর ব্রাউজার রিলোড করুন; Python সার্ভার পুনরায় চালু করার প্রয়োজন নেই।
লাইভ-রিলোড ডেভেলপমেন্টের জন্য Python সার্ভার চালু রেখে Next.js আলাদাভাবে শুরু করুন:
cd web-next && npm run dev
http://localhost:3000 খুলুন। ডেভেলপমেন্ট UI 127.0.0.1:8800-এ থাকা API ও WebSocket-এর সঙ্গে যোগাযোগ করে।
ফ্রন্টএন্ডের টাইপ-চেক চালান:
cd web-next && npx tsc --noEmit
নিরাপত্তা ও অপারেশনাল অনুশীলন
- নিশ্চিত করুন যে হোস্টটি
api-testnet.bybit.comরয়েছে; প্রকল্পটিতে ইচ্ছাকৃতভাবে মেইননেট ট্রেডিং সুইচ নেই। - অবজার্ভ-অনলি মোডে শুরু করুন এবং টেস্টনেট অর্ডার সক্রিয় করার আগে মডেলের ত্রুটি পর্যালোচনা করুন।
- উইথড্রয়াল অনুমতি ছাড়া Bybit ক্রেডেনশিয়াল ব্যবহার করুন।
.envএবংdata/ডিরেক্টরিকে ভার্সন কন্ট্রোলের বাইরে রাখুন।- শুধু P&L বিবেচনা না করে ভেন্যু ডাইভারজেন্স, ফিল রেশিও, লেটেন্সি, স্লিপেজ এবং এক্সিটের কারণ পর্যবেক্ষণ করুন।
- এক্সিকিউশন পরীক্ষা করার আগে কিল-সুইচ প্রক্রিয়াটি সহজে доступযোগ্য রাখুন।
- পরিবর্তন জমা দেওয়ার আগে Python টেস্ট এবং ফ্রন্টএন্ড টাইপ-চেক চালান।
উপসংহার
Calibrain Harness একটি দ্রুত শ্রেণিবিন্যাস মডেল perpetual-market পূর্বাভাসে পরিমাপযোগ্য তথ্য যোগ করে কি না তা নির্ধারণের একটি কাঠামোবদ্ধ উপায় প্রদান করে। এটি একটি স্থানীয় টার্মিনালে অবজেক্টিভ প্রশ্ন, ঐতিহাসিক বেস রেট, সম্ভাব্যতা ক্যালিব্রেশন, কঠোর যাচাই, টেস্টনেট এক্সিকিউশন এবং বিস্তারিত মূল্যায়ন একত্র করে।
প্রথমে সার্ভিসটি ইনস্টল করুন, Kairos অথবা Jev কনফিগার করুন এবং শুধু পর্যবেক্ষণমূলক সিদ্ধান্ত সংগ্রহ করুন। ডেটা ও মডেল পাইপলাইন স্থিতিশীল হলে Bybit testnet-এ সতর্কতার সঙ্গে এক্সিকিউশন পরীক্ষা করুন, রানগুলো আলাদা রাখুন এবং স্বল্পমেয়াদি P&L-এর ওপর নির্ভর না করে পর্যাপ্ত নমুনার ভিত্তিতে মডেলটিকে তার বেসলাইনের সঙ্গে মূল্যায়ন করুন।
