بی بی پی انکولی تقسیم کی حکمت عملی


تخلیق کی تاریخ: 2025-11-13 15:13:21 آخر میں ترمیم کریں: 2025-11-13 17:51:06
کاپی: 9 کلکس کی تعداد: 133
2
پر توجہ دیں
413
پیروکار

بی بی پی انکولی تقسیم کی حکمت عملی بی بی پی انکولی تقسیم کی حکمت عملی

جائزہ

یہ حکمت عملی ایک جدید قسم کا مقداری تجارتی نظام ہے جو اعداد و شمار کی تقسیم کی تھیوری پر مبنی ہے ، جس میں روایتی کثیر جہتی طاقت کے اشارے ((Bull Bear Power) کو انکولی تقسیم کی مطابقت پذیری کی تکنیک کے ساتھ جوڑا گیا ہے۔ حکمت عملی کی بنیادی جدت یہ ہے کہ روایتی تکنیکی تجزیہ کو باقاعدہ تقسیم کے بارے میں طے شدہ مفروضوں سے آزاد کیا جائے ، مارکیٹ کے اعداد و شمار کی اعلی درجے کی اعداد و شمار کی خصوصیات ((دھندلا اور چوٹی) کو حقیقی وقت میں گننے کے ذریعہ ، تجارت کی حد کو متحرک طور پر ایڈجسٹ کیا جائے ، تاکہ سگنل کی پیداوار کو مارکیٹ کی حقیقی تقسیم کی خصوصیات سے ہم آہنگ بنایا جاسکے۔

حکمت عملی کا اصول

اس حکمت عملی کے بنیادی کام کرنے کے طریقہ کار میں مندرجہ ذیل کلیدی عناصر شامل ہیں:

  1. جی ڈی پی کی پیمائش: اعلی ترین قیمت اور ای ایم اے کے فرق ((مختلف قوت) اور کم ترین قیمت اور ای ایم اے کے فرق ((باقی طاقت) کے مجموعے کا حساب لگاکر ، بنیادی اشارے کی تعمیر کریں جو مارکیٹ میں فضائی طاقت کے موازنہ کی عکاسی کرے۔ مثبت قیمت کثیر جہتی غلبہ ہے ، منفی قیمت فضائی غلبہ ہے۔

  2. تقسیم خصوصیت تجزیہ: اعلی درجے کے میٹرکس کا حساب لگانے کا طریقہ ، بی بی پی سیریز کا شماریاتی تجزیہ ، آؤٹ پٹ اوسط ، معیاری فرق ، انحراف ((تین درجے کا مرکزی میٹرکس) اور اضافی چوٹی ((چار درجے کا مرکزی میٹرکس کمی)) چار کلیدی اعدادوشمار ، مارکیٹ کے اعداد و شمار کی تقسیم کی شکل کو مکمل طور پر پیش کرتے ہیں۔ انحراف تقسیم کی غیر ہم آہنگی کو ظاہر کرتا ہے ، چوٹیوں میں دم کی موٹائی اور انتہائی واقعات کی تعدد کی عکاسی ہوتی ہے۔

  3. خود کار طریقے سے پیدا ہونے والی حد

    • معیاری عددی عددی کو بطور بیس زیڈ ویلیو اہمیت کی سطح پر مبنی حساب کتاب
    • جب اضافی چوٹی حد سے تجاوز کر جاتی ہے تو ، ٹی ڈسٹری بیوشن کو قریب تر ترمیم کریں ، آزادی کو پیچھے ہٹائیں اور چوٹی کے مطابق رواداری کی حد کو وسعت دیں
    • جب انحراف حد سے زیادہ ہو تو ، Cornish-Fisher توسیع کو غیر متناسب اصلاح کے لئے لاگو کریں
    • مارکیٹ کی حقیقی تقسیم کی خصوصیات کی متحرک ایڈجسٹمنٹ کے مطابق بالآخر اوپر اور نیچے کی قیمت کی لائن تشکیل دی گئی
  4. مارکیٹ کی حالت کا جائزہ

    • ٹرانزیکشن طول و عرض: موجودہ ٹرانزیکشن اور دورانیہ اوسط کے ضربی تعلقات کے ذریعہ مارکیٹ میں شرکت کی پیمائش کو اعلی ، درمیانے اور کم تین درجوں میں کی گئی
    • قیمت کی پوزیشن کی جہت: قیمتوں کو تاریخی حدود کے اندر اس کی متعلقہ پوزیشن پر فیصد درجہ بندی کے الگورتھم کے ذریعہ
    • مجموعی اسکورنگ میکانزم: دو جہتی اسکور کی اوسط لے کر اسٹاپس ایڈجسٹمنٹ فیکٹر تشکیل دیں
  5. متحرک روک تھام کا نظام

    • تین درجے کے سٹاپس ڈیزائن کا استعمال کرتے ہوئے، سٹاپس ضرب گولڈ تقسیم تناسب پر مبنی ہے ((1.618، 2.382، 3.618)
    • ہر سطح پر فاصلہ = ATR × فکسڈ ضرب × متحرک ایڈجسٹمنٹ فیکٹر
    • اعلی ٹرانسمیشن، اعلی فی صد کے ساتھ مضبوط رجحانات میں روک تھام کے اہداف کو بڑھانے کے لئے، کم شرکت کے رجحانات میں روک تھام کے فاصلے کو سخت کرنا
  6. سگنل کی تخلیق اور عملدرآمد

    • ملٹی ہیڈ سگنل: بی بی پی اوپر کی طرف بڑھتا ہے جب قیمت میں اضافے کے ل.
    • خالی سر کا اشارہ: BBP نیچے کی طرف سے گزرنے کے لئے نیچے کی کمی کو اپنانے کے لئے خالی
    • آؤٹ پٹ سگنل: بی بی پی ریٹرن میڈین لائن پر فلیٹ پوزیشن ، میڈین ریٹرن اصول پر عمل کریں

اسٹریٹجک فوائد

  1. مضبوط اعداد و شمار کی بنیاد: روایتی حکمت عملیوں کے بارے میں باقاعدہ تقسیم کے بارے میں طے شدہ مفروضوں سے چھٹکارا ، مارکیٹ میں حقیقی تقسیم کی خصوصیات کی متحرک تبدیلی کے مطابق فیصلہ سازی کے معیار کو تبدیل کرنا ، اعدادوشمار کی سطح سے سگنل جنریٹنگ منطق کی تشکیل نو ، جس میں سخت نظریاتی حمایت ہے۔

  2. نمایاں لچک: انحراف اور چوٹی کی اصل وقت کی نگرانی کے ذریعے ، حکمت عملی خود بخود مارکیٹ کی تقسیم کی خصوصیات میں تبدیلیوں کی نشاندہی کرنے کے قابل ہے۔ مثبت انحراف والے بازاروں میں بڑھتی ہوئی قیمتوں سے بچنے سے بچنے کے لئے ، موٹی ٹیل مارکیٹوں میں قیمتوں کی حد کو بڑھانے سے بچنے کے لئے معمول کے اتار چڑھاؤ پر ضرورت سے زیادہ ردعمل ، واقعی “ حکمت عملی کو مارکیٹ کے مطابق ڈھالنے” کا احساس ہوتا ہے۔

  3. کثیر جہتی جامع جائزہ: قیمت کی حرکیات ، حجم کی سرگرمی اور قیمتوں کے متعلقہ مقام کی تین جہتوں کو ملا کر ، مارکیٹ کی حالت کے جائزے کا ایک جامع نظام تشکیل دیں ، تاکہ ایک جہتی فیصلے کی یکطرفگی سے بچا جاسکے۔

  4. متحرک خطرے کے انتظامتین درجے کا اسٹاپ سسٹم متحرک ایڈجسٹمنٹ میکانزم کے ساتھ ملتا ہے ، جو مارکیٹ کی گرمی کے مطابق اسٹاپ فاصلے کو بہتر بنانے کے قابل ہے۔ رجحان کے حالات میں منافع کی جگہ کو بھرپور طور پر پکڑیں ، اور کمزور حالات میں تیزی سے منافع کمائیں۔

  5. اعلی معیار کا سگنل: صرف حقیقی تقسیم کے غیر معمولی پوائنٹس پر لین دین کو متحرک کرنے کے لئے اعداد و شمار کی نمایاں جانچ کے ذریعے ، جعلی سگنل کی شرح کو مؤثر طریقے سے کم کریں ، اور تجارت کی شماریاتی تاثیر کو بہتر بنائیں۔

  6. بصری بصیرت: متحرک کمی ، معیاری خرابی کی حوالہ لائن اور سگنل کی نشاندہی کے ذریعہ ، حکمت عملی کے انکولی ایڈجسٹمنٹ کے عمل کو واضح طور پر ظاہر کرنا ، سمجھنے اور اس کی نگرانی کرنا آسان ہے۔

اسٹریٹجک رسک

  1. پیرامیٹرز کو بہتر بنانے کی اعلی پیچیدگیحکمت عملی میں متعدد پیرامیٹرز ((نمایاں سطح ، انحراف کی حد ، چوٹی کی حد ، اسٹاپ فولڈر ، وغیرہ) شامل ہیں ، مختلف مارکیٹ کے حالات میں زیادہ سے زیادہ پیرامیٹرز کا مجموعہ مختلف ہے ، جس میں پیرامیٹرز کی منظم اصلاح اور جانچ پڑتال کی ضرورت ہے۔

  2. واضح روک تھام کا فقدانحکمت عملی بنیادی طور پر اوسط قیمت پر واپسی کے آغاز پر انحصار کرتی ہے ، جس میں قیمت یا اے ٹی آر پر مبنی ہارڈ اسٹاپ نقصان کا فقدان ہے۔ انتہائی یکطرفہ حالات میں ، اگر بی بی پی اوسط قیمت سے مستقل طور پر انحراف کرتا ہے اور واپس نہیں آتا ہے تو ، اس سے بڑے پیمانے پر نقصان اور سرمایہ کاری کا خطرہ ہوسکتا ہے۔

  3. افقی مارکیٹ میں عدم موافقتطویل مدتی تنگ اتار چڑھاؤ کے حالات میں ، بی بی پی کی قیمتیں اوسط کے قریب گرتی ہیں ، جس کی وجہ سے خودکشی کی قیمتوں میں کمی کا سامنا کرنا پڑتا ہے ، جس سے تجارت کے مواقع کم ہوجاتے ہیں ، اور حکمت عملی کی کارکردگی محدود ہوجاتی ہے۔

  4. ڈیٹا پر انحصار: تقسیم خصوصیت تجزیہ کو مستحکم اور قابل اعتماد اعداد و شمار کے نتائج حاصل کرنے کے لئے کافی تاریخی اعداد و شمار کی ضرورت ہے۔ نئے مارکیٹ میں آنے والی کرنسیوں یا اعداد و شمار کی کمی کے نشانات کے ابتدائی استعمال میں ، اعداد و شمار غیر مستحکم ہوسکتے ہیں ، جو حکمت عملی کی کارکردگی کو متاثر کرتے ہیں۔

  5. اعلی پیچیدگی: ریئل ٹائم اعلی درجے کی میٹرکس ، فیصد درجہ بندی اور متحرک کمی کو ماضی کے اعداد و شمار کے ذریعے حساب لگانے کی ضرورت ہے ، اور وسائل کی محدود تجارت کے ماحول میں کارکردگی کی رکاوٹوں کا سامنا کرنا پڑ سکتا ہے۔

  6. انتہائی خطرے سے دوچاربی بی پی ایک انتہائی تیز رفتار ایک طرفہ منظر نامے میں ، جیسے کہ فلیش کریش یا طوفان ، جس کی وجہ سے داخلے کی جگہ ناقابل یقین ہے یا بہترین وقت سے محروم ہوجاتا ہے ، لمحے میں حد سے تجاوز کر سکتا ہے اور تیزی سے واپس آ سکتا ہے۔

اصلاح کی سمت

  1. متحرک سٹاپ نقصان کا طریقہ کار متعارف کرانا

    • اے ٹی آر پر مبنی ٹریکنگ اسٹاپ ، اسٹاپ فاصلہ پوزیشن کے وقت اور منافع کی صورتحال کے ساتھ متحرک طور پر ایڈجسٹ ہوتا ہے
    • معاون مزاحمت کے مقامات کے ساتھ تکنیکی نقصان
    • زیادہ سے زیادہ منفی انحراف (MAE) کی بنیاد پر خود کار طریقے سے سٹاپ نقصان
  2. مارکیٹ کے حالات کی شناخت میں اضافہ

    • رجحان کی طاقت کے فلٹر متعارف کروائیں (جیسے ADX) ، جب کوئی واضح رجحان نہ ہو تو تجارت کو روک دیں
    • انتہائی اتار چڑھاو کے دوروں کی شناخت اور ان سے بچنے کے لئے اتار چڑھاو کی حالت کی درجہ بندی شامل کریں
    • مارکیٹ مائیکرو اسٹرکچر کے اشارے کے ساتھ مل کر ، لیکویڈیٹی کے خاتمے کی ابتدائی شناخت
  3. پیرامیٹرز کے لئے مرضی کے مطابق اصلاح

    • اپلی کیشن رولنگ ونڈو ریٹرننگ، متحرک ایڈجسٹمنٹ تجزیہ سائیکل لمبائی
    • پیرامیٹرز کو بہتر بنانے کے لئے مشین لرننگ کے طریقوں (جیسے جینیاتی الگورتھم ، پارٹیکل گروپ کی اصلاح) کو متعارف کرانا
    • مارکیٹ کی حالت پر مبنی پیرامیٹر سوئچنگ میکانیزم کو لاگو کرنا
  4. سگنل کے معیار میں بہتری

    • ٹرانسمیشن کی تصدیق کی شرائط میں اضافہ ، جس میں سگنل کے آغاز پر ٹرانسمیشن کی مقدار میں اضافہ کرنا ہوتا ہے
    • کلیدی تکنیکی مقامات (جیسے پچھلے اعلی ، پچھلے کم ، فیبونیکی ری سیٹ) کے ساتھ مل کر متعدد تصدیق
    • سگنل کی طاقت کی درجہ بندی کا نظام متعارف کرایا، درجہ بندی کے مطابق پوزیشن کا سائز ایڈجسٹ کریں
  5. پوزیشن مینجمنٹ کی اصلاح

    • کیلی فارمولے پر مبنی متحرک پوزیشن کی تقسیم
    • سگنل کی طاقت اور مارکیٹ کی حالت کے مطابق پوزیشن کھولنے کا تناسب ایڈجسٹ کریں
    • پیرامڈ میں اضافہ اور کمی کی حکمت عملی کا نفاذ
  6. ملٹی ٹائم فریم انٹیگریشن

    • اعلی ٹائم سائیکل میں بڑے رجحانات کی سمت کا تعین کرنے کے لئے ، صرف آگے کی تجارت کریں
    • کم وقت کے دورانیے میں عین مطابق داخلے کا مقام تلاش کریں
    • ایک کثیر دورانیہ گونج تصدیق کے طریقہ کار کی تعمیر

خلاصہ کریں۔

بی بی پی کی انکولی تقسیم کی حکمت عملی تکنیکی تجزیہ کو جدید اعدادوشمار کے ساتھ جوڑنے کی ایک جدید کوشش کی نمائندگی کرتی ہے ، جس میں انکولی تقسیم کے فٹ ہونے کی تکنیک کے ذریعہ روایتی حکمت عملی کے عام طور پر عام تقسیم کے مفروضے پر انحصار کی بنیادی طور پر حل کی گئی ہے۔ اس حکمت عملی کی بنیادی قدر اس کی نظریاتی جدت اور مارکیٹ کی حقیقی تقسیم کی خصوصیات کا احترام ہے ، جو مختلف تقسیم کی شکل میں مارکیٹ میں معقول سگنل معیار کو برقرار رکھنے کے قابل ہے۔ تین درجے کی متحرک روک تھام کا نظام حکمت عملی کی عملی کو مزید بڑھا دیتا ہے ، جو منافع اور خطرے کا اچھا توازن حاصل کرتا ہے۔

تاہم ، حکمت عملی میں بھی بہتری کی واضح گنجائش موجود ہے۔ واضح اسٹاپ نقصان کا طریقہ کار کی کمی سب سے بڑی کمزوری ہے ، جس کو عملی استعمال میں ترجیح کے ساتھ بھرنے کی ضرورت ہے۔ پیرامیٹرز کی اصلاح کی پیچیدگی اور کراس ڈسک مارکیٹوں کی موافقت کے مسائل کو بھی مارکیٹ کے ماحول کی شناخت اور پیرامیٹرز کی خود کو اپنانے کے طریقہ کار کو متعارف کرانے کے ذریعے حل کرنے کی ضرورت ہے۔

یہ حکمت عملی ایک عمدہ سیکھنے اور بہتر بنانے کا فریم ورک فراہم کرتی ہے جو نظریاتی گہرائی کی تلاش میں ہیں اور گہرائی سے مطالعہ کرنے کے لئے تیار ہیں۔

  1. ٹرانزیکشن کے لئے کافی تاریخ کی بازیافت اور پیرامیٹرز کی اصلاح
  2. ATR یا فی صد کی بنیاد پر ہارڈ سٹاپ تحفظ شامل کریں
  3. رجحان فلٹر کے ساتھ منسلک غیر منقولہ مارکیٹ کے حالات میں تجارت سے بچنے کے لئے
  4. چھوٹی پوزیشنوں سے شروع کریں اور حکمت عملی کو عملی طور پر عملی طور پر عملی طور پر عملی طور پر عملی طور پر عملی طور پر عملی طور پر عملی طور پر عملی طور پر عملی طور پر عملی طور پر عملی طور پر عملی طور پر عملی طور پر عملی طور پر عملی طور پر عملی طور پر عملی طور پر عملی طور پر عملی طور پر عملی طور پر عملی طور پر عملی طور پر عملی طور پر عملی طور پر عملی طور پر عملی طور پر عملی طور پر.

مجموعی طور پر ، یہ ایک مضبوط نظریاتی بنیاد ، سخت ڈیزائن منطق ، اور اعلی تحقیقی اور قابل اطلاق قدر کی ایک جدید حکمت عملی ہے ، جس میں مقدار کے تاجروں کے لئے گہری تلاش اور مستقل اصلاح کے قابل ہے۔

حکمت عملی کا ماخذ کوڈ
//@version=5
strategy("BBP Adaptive Distribution Strategy [presentTrading]")

//========================================
// BBP策略参数设置
//========================================
lengthInput = input.int(20, "EMA Length");//EMA周期长度
zLength = input.int(150, "Distribution Analysis Period");//分布分析周期

//自适应分布参数组
dist_group = "Distribution Fitting";
//统计显著性水平,0.05表示95%置信度
significance_level = input.float(0.05, "Significance Level", minval=0.01, maxval=0.1, step=0.01, 
    group=dist_group, tooltip="统计显著性水平,0.05=95%置信度");
//是否启用自适应分布拟合,禁用则使用传统Z-score
auto_fit = input.bool(true, "Auto Fit Distribution", group=dist_group, 
    tooltip="启用自适应分布拟合,禁用则使用传统Z-score");
//偏度阈值,超过此值考虑使用偏态分布
skew_threshold = input.float(0.5, "Skewness Threshold", minval=0.1, maxval=2.0, group=dist_group, 
    tooltip="超过此值考虑偏态分布");
//峰度阈值,超过此值考虑使用厚尾分布
kurt_threshold = input.float(1.0, "Kurtosis Threshold", minval=0.3, maxval=3.0, group=dist_group, 
    tooltip="超过此值考虑厚尾分布");

//========================================
// 止盈参数设置
//========================================
tp_group = "Take Profit Settings";//止盈参数组
useTP = input.bool(true, "Use Take Profit", group=tp_group);//是否启用止盈
baseAtrLength = input.int(20, "ATR Period", minval=1, group=tp_group);//ATR计算周期
atrMult1 = input.float(1.618, "TP1 ATR Multiplier", minval=0.1, step=0.1, group=tp_group);//第一止盈位ATR倍数
atrMult2 = input.float(2.382, "TP2 ATR Multiplier", minval=0.1, step=0.1, group=tp_group);//第二止盈位ATR倍数
atrMult3 = input.float(3.618, "TP3 ATR Multiplier", minval=0.1, step=0.1, group=tp_group);//第三止盈位ATR倍数
tp1_size = input.float(13, "TP1 Position %", minval=1, maxval=100, group=tp_group);//第一止盈位仓位百分比
tp2_size = input.float(13, "TP2 Position %", minval=1, maxval=100, group=tp_group);//第二止盈位仓位百分比
tp3_size = input.float(13, "TP3 Position %", minval=1, maxval=100, group=tp_group);//第三止盈位仓位百分比

//========================================
// 成交量分析参数设置
//========================================
vol_group = "Volume Analysis Settings";//成交量分析参数组
vol_period = input.int(100, "Volume MA Period", minval=1, group=vol_group);//成交量均线周期
vol_high = input.float(2.0, "High Volume Multiplier", minval=1.0, step=0.1, group=vol_group);//高成交量倍数
vol_med = input.float(1.5, "Medium Volume Multiplier", minval=1.0, step=0.1, group=vol_group);//中成交量倍数
vol_low = input.float(1.0, "Low Volume Multiplier", minval=0.5, step=0.1, group=vol_group);//低成交量倍数
vol_high_mult = input.float(1.5, "High Volume Factor", minval=0.1, step=0.1, group=vol_group);//高成交量系数
vol_med_mult = input.float(1.3, "Medium Volume Factor", minval=0.1, step=0.1, group=vol_group);//中成交量系数
vol_low_mult = input.float(1.0, "Low Volume Factor", minval=0.1, step=0.1, group=vol_group);//低成交量系数

//========================================
// 百分位分析参数设置
//========================================
perc_group = "Percentile Analysis Settings";//百分位分析参数组
perc_period = input.int(100, "Percentile Period", minval=20, group=perc_group);//百分位计算周期
perc_high = input.float(90, "High Percentile", minval=50, maxval=100, group=perc_group);//高百分位阈值
perc_med = input.float(80, "Medium Percentile", minval=50, maxval=100, group=perc_group);//中百分位阈值
perc_low = input.float(70, "Low Percentile", minval=0, maxval=100, group=perc_group);//低百分位阈值
perc_high_mult = input.float(1.5, "High Percentile Factor", minval=0.1, step=0.1, group=perc_group);//高百分位系数
perc_med_mult = input.float(1.3, "Medium Percentile Factor", minval=0.1, step=0.1, group=perc_group);//中百分位系数
perc_low_mult = input.float(1.0, "Low Percentile Factor", minval=0.1, step=0.1, group=perc_group);//低百分位系数

//========================================
// 核心多空力量计算
//========================================
//计算价格的指数移动平均
emaClose = ta.ema(close, lengthInput);
//多头力量:最高价与EMA的差值
bullPower = high - emaClose;
//空头力量:最低价与EMA的差值
bearPower = low - emaClose;
//多空力量平衡:多头力量加上空头力量
bbp = bullPower + bearPower;

//计算分布的高阶矩:均值、标准差、偏度、峰度
calcDistributionMoments(src, length) =>
    mean = ta.sma(src, length);//计算均值
    variance = ta.variance(src, length);//计算方差
    stddev = math.sqrt(variance);//计算标准差
    
    //初始化偏度和峰度累加变量
    skew_sum = 0.0;
    kurt_sum = 0.0;
    
    //当标准差大于0时,计算偏度和峰度
    if stddev > 0
        for i = 0 to math.min(length - 1, 100)
            z = (src[i] - mean) / stddev;//计算标准化值
            z2 = z * z;//计算Z的平方
            skew_sum += z * z2;//累加偏度项
            kurt_sum += z2 * z2;//累加峰度项
    
    n = math.min(length, 100);//取样本数
    skewness = skew_sum / n;//计算偏度
    excess_kurtosis = kurt_sum / n - 3.0;//计算超额峰度
    
    [mean, stddev, skewness, excess_kurtosis];//返回四个统计量

//自适应阈值计算:根据分布特征动态调整阈值
calcAdaptiveThreshold(mu, sigma, skew, kurt, alpha, use_adaptive) =>
    //计算标准正态分位数(基础Z值)
    z_base = math.sqrt(-2.0 * math.log(alpha / 2.0));
    
    z_adjusted = z_base;//初始化调整后的Z值
    
    //如果启用自适应拟合,则进行分布修正
    if use_adaptive
        //厚尾修正:使用t分布近似,当峰度超过阈值时调整
        if math.abs(kurt) > kurt_threshold
            df = math.max(6.0 / math.abs(kurt) + 4.0, 5.0);//计算自由度
            z_adjusted := z_adjusted * math.sqrt(df / (df - 2.0));//调整Z值
        
        //偏度修正:使用Cornish-Fisher展开式,当偏度超过阈值时调整
        if math.abs(skew) > skew_threshold
            z_adjusted := z_adjusted + skew * (z_adjusted * z_adjusted - 1.0) / 6.0;//应用偏度修正
    
    //计算上下阈值
    upper_threshold = mu + sigma * z_adjusted;
    lower_threshold = mu - sigma * z_adjusted;
    
    [upper_threshold, lower_threshold];//返回上下阈值

//执行分布分析:计算BBP的均值、标准差、偏度和峰度
[mu, sigma, skewness, kurtosis] = calcDistributionMoments(bbp, zLength);

//计算自适应阈值:基于统计特征动态确定交易阈值
[upper_threshold, lower_threshold] = calcAdaptiveThreshold(mu, sigma, skewness, kurtosis, 
    significance_level, auto_fit);

//========================================
// 成交量与百分位分析
//========================================
vol_sma = ta.sma(volume, vol_period);//计算成交量简单移动平均
vol_mult = volume / vol_sma;//计算当前成交量相对于均值的倍数

//计算百分位排名:返回当前值在历史数据中的百分位位置
calcPercentile(src) =>
    var values = array.new_float(0);//初始化数组
    array.unshift(values, src);//将新值插入数组头部
    if array.size(values) > perc_period
        array.pop(values);//超过周期长度时删除尾部元素
    //计算百分位排名
    array.size(values) > 0 ? array.percentrank(values, array.size(values)-1) * 100 : 50;

price_perc = calcPercentile(close);//计算价格百分位
vol_perc = calcPercentile(volume);//计算成交量百分位

//计算止盈系数:综合成交量和价格百分位评分
getTpFactor() =>
    //根据成交量倍数评分
    vol_score = vol_mult > vol_high ? vol_high_mult : vol_mult > vol_med ? vol_med_mult : vol_mult > vol_low ? vol_low_mult : 0.8;
    
    //根据价格百分位评分
    price_score = price_perc > perc_high ? perc_high_mult : price_perc > perc_med ? perc_med_mult : price_perc > perc_low ? perc_low_mult : 0.8;
    
    math.avg(vol_score, price_score);//返回两个评分的平均值

//========================================
// 入场出场逻辑
//========================================
//多头入场条件:BBP向上突破上阈值
longCondition = ta.crossover(bbp, upper_threshold);
//空头入场条件:BBP向下跌破下阈值
shortCondition = ta.crossunder(bbp, lower_threshold);
//多头出场条件:BBP向下跌破均值
exitLongCondition = ta.crossunder(bbp, mu);
//空头出场条件:BBP向上突破均值
exitShortCondition = ta.crossover(bbp, mu);

//========================================
// 交易执行逻辑
//========================================
//在K线确认后执行交易
if (barstate.isconfirmed)
    if longCondition
        strategy.entry("Long", strategy.long);//开多头仓位
    if shortCondition
        strategy.entry("Short", strategy.short);//开空头仓位
    if exitLongCondition
        strategy.close("Long");//平多头仓位
    if exitShortCondition
        strategy.close("Short");//平空头仓位

//========================================
// 止盈执行逻辑
//========================================
//当启用止盈且持有仓位时执行止盈逻辑
if useTP and strategy.position_size != 0
    base_move = ta.atr(baseAtrLength);//计算基础ATR值
    tp_factor = getTpFactor();//获取止盈系数
    is_long = strategy.position_size > 0;//判断是否为多头仓位
    entry_price = strategy.position_avg_price;//获取入场均价
    
    //多头止盈设置
    if is_long
        tp1_price = entry_price + (base_move * atrMult1 * tp_factor);//计算第一止盈价
        tp2_price = entry_price + (base_move * atrMult2 * tp_factor);//计算第二止盈价
        tp3_price = entry_price + (base_move * atrMult3 * tp_factor);//计算第三止盈价
        
        strategy.exit("TP1", "Long", qty_percent=tp1_size, limit=tp1_price);//设置第一止盈
        strategy.exit("TP2", "Long", qty_percent=tp2_size, limit=tp2_price);//设置第二止盈
        strategy.exit("TP3", "Long", qty_percent=tp3_size, limit=tp3_price);//设置第三止盈
    else
        //空头止盈设置
        tp1_price = entry_price - (base_move * atrMult1 * tp_factor);//计算第一止盈价
        tp2_price = entry_price - (base_move * atrMult2 * tp_factor);//计算第二止盈价
        tp3_price = entry_price - (base_move * atrMult3 * tp_factor);//计算第三止盈价
        
        strategy.exit("TP1", "Short", qty_percent=tp1_size, limit=tp1_price);//设置第一止盈
        strategy.exit("TP2", "Short", qty_percent=tp2_size, limit=tp2_price);//设置第二止盈
        strategy.exit("TP3", "Short", qty_percent=tp3_size, limit=tp3_price);//设置第三止盈

//========================================
// 图表绘制
//========================================
//绘制BBP柱状图:多头力量为绿色,空头力量为红色
plot(bbp, color=bbp >= mu ? color.new(color.green, 0) : color.new(color.red, 0), 
     title="BBPower", style=plot.style_columns);

//绘制均值线
plot(mu, "Mean", color=color.gray, linewidth=1, style=plot.style_line);
//绘制上阈值线
plot(upper_threshold, "Upper Threshold", color=color.orange, linewidth=2);
//绘制下阈值线
plot(lower_threshold, "Lower Threshold", color=color.orange, linewidth=2);

//绘制参考线:正负1倍标准差
plot(mu + sigma, "+1σ", color=color.new(color.blue, 70), linewidth=1, style=plot.style_circles);
plot(mu - sigma, "-1σ", color=color.new(color.blue, 70), linewidth=1, style=plot.style_circles);
//绘制参考线:正负2倍标准差
plot(mu + 2*sigma, "+2σ", color=color.new(color.purple, 70), linewidth=1, style=plot.style_cross);
plot(mu - 2*sigma, "-2σ", color=color.new(color.purple, 70), linewidth=1, style=plot.style_cross);

//========================================
// 信号标记
//========================================
//绘制多头信号标记
plotshape(longCondition, title="Long Signal", location=location.bottom, 
    color=color.new(color.green, 0), style=shape.labelup, text="LONG", 
    textcolor=color.white, size=size.small);

//绘制空头信号标记
plotshape(shortCondition, title="Short Signal", location=location.top, 
    color=color.new(color.red, 0), style=shape.labeldown, text="SHORT", 
    textcolor=color.white, size=size.small);