[TOC]

সম্প্রতি আমি ঝিহুতে একটি পোস্ট দেখতে পেলাম যার শিরোনাম ছিল “ক্রিপ্টো জগতে দ্রুত ধনী হওয়ার একটি স্থিতিশীল উপায়: তিন মাসে 3000U থেকে 12000U”।
আমি শুধু হেসে ফেললাম। স্থিতিশীল? দ্রুত ধনী হও? এই দুটি শব্দ একসাথে বললে সাধারণত দুটি জিনিসের একটি বোঝা যায়: হয় এটি একটি প্রতারণা, অথবা আপনি এমন কেউ যিনি এখনও কোনও কালো রাজহাঁসের ঘটনার মুখোমুখি হননি।
তবে, একজন পরিমাণগত ট্রেডিং ডেভেলপার হিসেবে, এই কৌশলের বিবরণটি দেখার পর আমি ক্লিক করে একবার দেখে নেওয়ার লোভ সামলাতে পারিনি।

পড়ার পর, আমি গভীর চিন্তায় ডুবে গেলাম…
মনে হচ্ছে, হয়তো, হয়তো, হয়তো, আশা, ইচ্ছা, হয়তো কিছু অর্থবহ?
আর দেরি না করে, চলুন ইনভেন্টরস কোয়ান্টিফিকেশন প্ল্যাটফর্মটি খুলে শুরু করি!
সবচেয়ে সহজ যুক্তি:
// 伪代码
if (btcChange > 2%) {
开多 1手 BTC
开空 1手 ETH
}
কোড লেখা শেষ করার পর, আমি আত্মবিশ্বাসের সাথে ব্যাকটেস্টে ক্লিক করলাম, এবং তারপর…

আমরা টাকা হারাচ্ছি, হাতের মুঠোয়।
ইকুইটি কার্ভের নিচের দিকে নেমে যাওয়ার দিকে তাকিয়ে আমি গভীর আত্ম-সন্দেহে ডুবে গেলাম।
শান্তভাবে চিন্তা করলে, সমস্যাটি স্পষ্ট:
১ লট বিটিসি ≠ ১ লট ইটিএইচ
বর্তমানে প্রতিটি BTC এর মূল্য \(১০০,০০০, যেখানে ETH মাত্র \)৩,০০০ এর কাছাকাছি। যদি আপনি ১:১ অনুপাত ব্যবহার করে হেজ করেন, তাহলে সেটা হেজিং নয়, সেটা টাকা দান করা।
একটি সঠিক হেজিং কৌশল বিবেচনা করা প্রয়োজন:
এই কোডটি কৌশলটির মূল গণনা ইঞ্জিন, যা BTC-এর সাপেক্ষে ETH-এর বিটা সহগের গণনা সম্পূর্ণরূপে বাস্তবায়ন করে। এখানে বিটা সহগ দুটি গুরুত্বপূর্ণ তথ্য উপস্থাপন করে: অন্তর্নিহিত মূল্য অনুপাত এবং অস্থিরতা সম্পর্ক, যা সরাসরি হেজ করা প্রয়োজন এমন অনুপাত নির্ধারণ করে।
// 计算ETH相对BTC的Beta系数
function calculateBeta(btcRecords, ethRecords, lookback) {
// 数据不足时的降级处理
if (btcRecords.length < lookback + 1 || ethRecords.length < lookback + 1) {
Log("⚠️ K线数据不足,使用当前价格比作为默认Beta")
let btcPrice = btcRecords[btcRecords.length - 1].Close
let ethPrice = ethRecords[ethRecords.length - 1].Close
let defaultBeta = btcPrice / ethPrice
betaInfo.currentBeta = defaultBeta
betaInfo.correlation = 0
betaInfo.priceRatio = defaultBeta
betaInfo.returnBeta = 1.0
betaInfo.lastUpdate = new Date().toLocaleString()
Log(" 默认Beta =", _N(defaultBeta, 2), "| 价格比:", _N(btcPrice, 0), "/", _N(ethPrice, 0))
return defaultBeta
}
let btcReturns = []
let ethReturns = []
let priceRatios = []
// 第一步:计算日收益率 + 历史价格比
for (let i = btcRecords.length - lookback; i < btcRecords.length; i++) {
// 日收益率 = (今日收盘 - 昨日收盘) / 昨日收盘
let btcRet = (btcRecords[i].Close - btcRecords[i-1].Close) / btcRecords[i-1].Close
let ethRet = (ethRecords[i].Close - ethRecords[i-1].Close) / ethRecords[i-1].Close
btcReturns.push(btcRet)
ethReturns.push(ethRet)
// 记录每天的价格比
let ratio = btcRecords[i].Close / ethRecords[i].Close
priceRatios.push(ratio)
}
// 第二步:计算历史平均价格比
let avgPriceRatio = priceRatios.reduce((a, b) => a + b, 0) / priceRatios.length
// 第三步:计算价格比的波动性
let priceRatioVariance = 0
for (let i = 0; i < priceRatios.length; i++) {
let diff = priceRatios[i] - avgPriceRatio
priceRatioVariance += diff * diff
}
priceRatioVariance /= (priceRatios.length - 1)
let priceRatioStd = Math.sqrt(priceRatioVariance)
let priceRatioCv = priceRatioStd / avgPriceRatio // 变异系数
// 第四步:计算收益率的均值
let btcMean = btcReturns.reduce((a,b) => a+b, 0) / btcReturns.length
let ethMean = ethReturns.reduce((a,b) => a+b, 0) / ethReturns.length
// 第五步:计算协方差和方差
let covariance = 0
let btcVariance = 0
let ethVariance = 0
for (let i = 0; i < btcReturns.length; i++) {
let btcDiff = btcReturns[i] - btcMean
let ethDiff = ethReturns[i] - ethMean
covariance += btcDiff * ethDiff
btcVariance += btcDiff * btcDiff
ethVariance += ethDiff * ethDiff
}
covariance /= (btcReturns.length - 1)
btcVariance /= (btcReturns.length - 1)
ethVariance /= (ethReturns.length - 1)
// 第六步:计算收益率Beta
// Beta = Cov(ETH, BTC) / Var(BTC)
let returnBeta = covariance / btcVariance
// 第七步:计算相关系数
// 相关系数 = Cov(ETH, BTC) / (Std(BTC) × Std(ETH))
let correlation = covariance / Math.sqrt(btcVariance * ethVariance)
// 第八步:最终Beta = 历史平均价格比 × 收益率Beta
let finalBeta = avgPriceRatio * returnBeta
// 第九步:限制Beta范围,避免极端值
let minBeta = avgPriceRatio * 0.5
let maxBeta = avgPriceRatio * 2.0
finalBeta = Math.max(minBeta, Math.min(maxBeta, finalBeta))
// 第十步:获取当前价格比
let currentBtcPrice = btcRecords[btcRecords.length - 1].Close
let currentEthPrice = ethRecords[ethRecords.length - 1].Close
let currentPriceRatio = currentBtcPrice / currentEthPrice
// 更新Beta信息到全局
betaInfo.currentBeta = finalBeta
betaInfo.correlation = correlation
betaInfo.returnBeta = returnBeta
betaInfo.avgPriceRatio = avgPriceRatio
betaInfo.currentPriceRatio = currentPriceRatio
betaInfo.priceRatioStd = priceRatioStd
betaInfo.priceRatioCv = priceRatioCv
betaInfo.lastUpdate = new Date().toLocaleString()
return finalBeta
}
প্রধান কার্যাবলী এবং যুক্তি:
Cov(ETH,BTC) / Var(BTC)এটি BTC রিটার্নের পরিবর্তনের প্রতি ETH রিটার্নের সংবেদনশীলতা নির্দেশ করে।বিটা সংস্করণ প্রকাশের পর, তত্ত্ব এবং বাস্তবতার মধ্যে ব্যবধান পূরণ করতে হবে, তাত্ত্বিক সহগগুলিকে বিনিময়ে প্রকৃত লেনদেনযোগ্য পরিমাণে রূপান্তর করতে হবে। কোডের এই অংশটি এই গুরুত্বপূর্ণ রূপান্তরটি সম্পন্ন করেছে।
// 计算对冲张数
function calculateHedgeAmount(beta) {
let btcCoinAmount = config.btcCoinAmount // 0.1 BTC
let ethCoinAmount = btcCoinAmount * beta // ETH数量 = 0.1 × Beta
// 转换成合约张数
let btcContracts = Math.floor(btcCoinAmount / contractInfo.btcCtVal)
btcContracts = Math.max(1, btcContracts) // 至少1张
let ethContracts = Math.floor(ethCoinAmount / contractInfo.ethCtVal)
ethContracts = Math.max(1, ethContracts)
// 实际开仓的币数
let actualBtcCoins = btcContracts * contractInfo.btcCtVal
let actualEthCoins = ethContracts * contractInfo.ethCtVal
Log("🎯 对冲计算 | Beta:", _N(beta, 3),
"\n BTC: ", _N(actualBtcCoins, 4), "币 =", btcContracts, "张 (CtVal:", contractInfo.btcCtVal, ")",
"\n ETH: ", _N(actualEthCoins, 4), "币 =", ethContracts, "张 (CtVal:", contractInfo.ethCtVal, ")",
"\n 实际比例:", _N(actualEthCoins / actualBtcCoins, 3))
return {
btc: btcContracts,
eth: ethContracts,
btcCoins: actualBtcCoins,
ethCoins: actualEthCoins,
beta: beta
}
}
মূল রূপান্তর পদক্ষেপ:
এই বিভাগে কৌশল বাস্তবায়ন এবং ঝুঁকি নিয়ন্ত্রণ, গণনাকৃত হেজিং পরিকল্পনাকে প্রকৃত ট্রেডিং কার্যক্রমে রূপান্তর এবং ঝুঁকি ব্যবস্থাপনা অন্তর্ভুক্ত করা হয়েছে। এন্ট্রি লজিকটি এখানে চিত্রিত করা হয়েছে, উদাহরণ হিসেবে একটি দীর্ঘ অবস্থান ব্যবহার করে; একটি সংক্ষিপ্ত অবস্থান একইভাবে বোঝা যেতে পারে।
ট্রিগার কন্ডিশন ডিজাইনসিস্টেমটি একটি দ্বৈত শর্ত ব্যবহার করে: BTC মূল্য বৃদ্ধি > 2% এবং BTC মূল্য বৃদ্ধি > ETH মূল্য বৃদ্ধি। এটি পর্যাপ্ত বাজারের অস্থিরতা নিশ্চিত করে এবং প্রত্যাশিত আপেক্ষিক শক্তির সম্পর্ক সত্য থাকে।
// BTC涨 > 2% 且涨幅大于ETH → 开多BTC + 开空ETH
if (btcChange > 0.02 && btcChange > ethChange) {
let amounts = calculateHedgeAmount(beta)
// 先开BTC多单
let btcOrder = createMarketOrder(config.btcSymbol, "buy", amounts.btc)
if (!btcOrder) {
Log("❌ BTC开多失败")
return null
}
// 再开ETH空单
let ethOrder = createMarketOrder(config.ethSymbol, "sell", amounts.eth)
if (!ethOrder) {
Log("❌ ETH开空失败,回滚BTC")
createMarketOrder(config.btcSymbol, "closebuy", amounts.btc)
return null
}
Log("🟢 开仓完成 | Beta:", _N(beta, 3))
}
পারমাণবিক লেনদেন সম্পাদনএক্সিকিউশন ধারাবাহিকভাবে সম্পন্ন হয় এবং এতে একটি রোলব্যাক প্রক্রিয়া অন্তর্ভুক্ত থাকে। প্রথমে, BTC-তে একটি লং পজিশন খুলুন; যদি সফল হন, তাহলে ETH-তে একটি শর্ট পজিশন খুলুন। যদি ETH অর্ডার ব্যর্থ হয়, তাহলে পজিশনের অখণ্ডতা নিশ্চিত করতে এবং একতরফা ঝুঁকির সংস্পর্শ এড়াতে অবিলম্বে BTC-তে বিদ্যমান লং পজিশনটি বন্ধ করুন।
নিম্নলিখিতটি সমাপনী যুক্তির একটি প্রদর্শন:
মুদ্রা দ্বারা গণনা করা লাভ এবং ক্ষতিদুটি পজিশনের মোট লাভ এবং ক্ষতি খোলা কয়েনের সংখ্যার উপর ভিত্তি করে গণনা করা হয় এবং সামগ্রিক হেজিং প্রভাব নির্ধারণ করা হয়।
ঝুঁকি নিয়ন্ত্রণ থ্রেশহোল্ড সেটিংসপোর্টফোলিওর সামগ্রিক কর্মক্ষমতা মূল্যায়ন করা হয়, এবং অসমমিত মুনাফা গ্রহণ (+3%) এবং স্টপ-লস (-1%) লাইনগুলি ইতিবাচক প্রত্যাশিত মান অনুসরণ করার জন্য সেট করা হয়।
// 按币数计算盈亏
function checkClose(pos, btcTicker, ethTicker) {
let btcPnlUsd, ethPnlUsd
if (pos.type === 'long_btc_short_eth') {
// BTC多单盈亏 = (当前价 - 开仓价) × 币数
btcPnlUsd = (btcTicker.Last - pos.btcPrice) * pos.btcCoinAmount
// ETH空单盈亏 = (开仓价 - 当前价) × 币数
ethPnlUsd = (pos.ethPrice - ethTicker.Last) * pos.ethCoinAmount
} else {
btcPnlUsd = (pos.btcPrice - btcTicker.Last) * pos.btcCoinAmount
ethPnlUsd = (ethTicker.Last - pos.ethPrice) * pos.ethCoinAmount
}
let totalPnlUsd = btcPnlUsd + ethPnlUsd
let totalCost = pos.btcPrice * pos.btcCoinAmount + pos.ethPrice * pos.ethCoinAmount
let totalPnlPct = totalPnlUsd / totalCost
// 止盈: +3%
if (totalPnlPct >= 0.03) {
return {close: true, reason: '✅止盈', pnl: totalPnlPct, pnlUsd: totalPnlUsd}
}
// 止损: -1%
if (totalPnlPct <= -0.01) {
return {close: true, reason: '🛑止损', pnl: totalPnlPct, pnlUsd: totalPnlUsd}
}
return {close: false, pnl: totalPnlPct, pnlUsd: totalPnlUsd}
}
পরীক্ষাটি পুনরায় পরীক্ষা করা হয়েছিল, এবং ফলাফল ছিল…

অবশেষে বক্ররেখা উপরে উঠছে!
অক্টোবর ২০২৫ থেকে জানুয়ারী ২০২৬ পর্যন্ত, প্রায় ৩ মাস:
সম্পূর্ণ ব্যাকটেস্টিংয়ের পর, এই কৌশলটি বৈধ করা হয়েছিল:
এটি পরিমাণগত ট্রেডিংয়ের আকর্ষণ:
একটি ধারণা দিয়ে শুরু করুন → এটি বাস্তবায়নের জন্য কোড লিখুন → যাচাই করার জন্য ব্যাকটেস্ট → অপ্টিমাইজ করুন এবং উন্নত করুন
ঝিহুর পোস্টে বর্ণিত কৌশলটি সঠিক ছিল, কিন্তু খুঁটিনাটি খুঁটিতেই লুকিয়ে আছে:
প্রকৃত পরিমাণগত ট্রেডিংয়ের মধ্যে রয়েছে তথ্য সহ প্রতিটি ধারণা যাচাই করা, কোড সহ প্রতিটি কৌশল বাস্তবায়ন করা এবং প্রতিটি ট্রেড রেকর্ড করা।
যদি আপনার কোন ধারণা থাকে, তাহলে আপনার তা যাচাই করা উচিত।
কোডটি নিবন্ধের শেষে রয়েছে। এটি চালাতে, পরিবর্তন করতে এবং নিজে নিজে অপ্টিমাইজ করতে দ্বিধা করবেন না।
যদি আপনার আগ্রহ থাকে, আমি পরে লেখা চালিয়ে যেতে পারি:
লাইক, কমেন্ট এবং আরও আপডেটের জন্য অনুরোধ করতে দ্বিধা করবেন না!
📝আর্টিকেল সোর্স কোড (স্ট্র্যাটেজি প্যারামিটারগুলি সোর্স কোডের শুরুতে প্যারামিটার বিভাগে নমনীয়ভাবে সেট করা যেতে পারে; ট্রেডিং লজিকটি অপ্টিমাইজ করা হয়েছে)।:দ্বিমুখী বিটা হেজিং কৌশল
এই নিবন্ধটি শুধুমাত্র শেখা এবং যোগাযোগের উদ্দেশ্যে এবং এটি কোনও বিনিয়োগ পরামর্শ গঠন করে না।
পি.এস.: ক্রিপ্টো জগতে দ্রুত ধনী হওয়ার কোনও নিশ্চিত উপায় নেই; কেবল ঝুঁকি ব্যবস্থাপনা এবং ক্রমাগত অপ্টিমাইজেশন।