৫ গুণ ঝুঁকি-পুরস্কার কৌশল অনুসরণ করে ডায়নামিক মানি ম্যানেজমেন্ট সুপারট্রেন্ড ট্রেন্ড

ATR supertrend 趋势跟踪 动态资金管理 风险控制 金字塔加仓 分组交易
সৃষ্টির তারিখ: 2025-03-31 11:53:06 অবশেষে সংশোধন করুন: 2025-03-31 11:53:06
অনুলিপি: 0 ক্লিকের সংখ্যা: 357
2
ফোকাস
319
অনুসারী

৫ গুণ ঝুঁকি-পুরস্কার কৌশল অনুসরণ করে ডায়নামিক মানি ম্যানেজমেন্ট সুপারট্রেন্ড ট্রেন্ড ৫ গুণ ঝুঁকি-পুরস্কার কৌশল অনুসরণ করে ডায়নামিক মানি ম্যানেজমেন্ট সুপারট্রেন্ড ট্রেন্ড

ওভারভিউ

ডায়নামিক ফান্ড ম্যানেজমেন্ট সুপারট্রেন্ড ট্রেন্ড ট্র্যাকিং ৫ গুণ ঝুঁকি রিটার্ন কৌশল একটি সুপারট্রেন্ড সূচক ভিত্তিক একটি উন্নত ট্রেন্ড ট্র্যাকিং সিস্টেম যা ট্রেন্ড বিচারকে সঠিক তহবিল পরিচালনার কৌশলগুলির সাথে একত্রিত করে যাতে প্রতি লেনদেনের পজিশনের আকারটি গতিশীলভাবে গণনা করে ঝুঁকি নিয়ন্ত্রণ করা যায়। এই কৌশলটির মূল বৈশিষ্ট্যটি হ’ল বাজারের অস্থিরতা নির্ধারণের জন্য এটিআর (গড় সত্যিকারের ওঠানামা) ব্যবহার করা, একই দিকের লেনদেনের সংকেত গ্রুপ পরিচালনা করা, এবং প্রতিটি লেনদেনের জন্য একটি নির্দিষ্ট 5: 1 ঝুঁকি রিটার্ন অনুপাত সেট করা। সিস্টেমটি একই সংকেত দিকের জন্য একাধিক পজিশনকে সমর্থন করে, তবে কঠোর ঝুঁকি ব্যবস্থাপনা বজায় রাখে, প্রতিটি পজিশনের জন্য অ্যাকাউন্টের মোট মূল্যের মাত্র 1% ঝুঁকি বহন করে। এই কৌশলটি ঝুঁকির স্তর কম রাখার পাশাপাশি শক্তিশালী প্রবণীর সুযোগগুলিকে পুরোপুরিভাবে দখল করতে সক্ষম করে।

কৌশল নীতি

এই কৌশলটি সুপারট্রেন্ড সূচকের উপর ভিত্তি করে প্রবণতা নির্ধারণের প্রক্রিয়া এবং প্যানেল ট্রেডিং এবং গতিশীল পজিশন ম্যানেজমেন্টের উন্নত প্রযুক্তির সমন্বয় করে। এর মূল কাজ করার নীতিগুলি নিম্নরূপঃ

  1. সুপারট্রেন্ড সূচক গণনা: প্রথমে এটিআর মান গণনা করা হয়, তারপরে মাঝারি পয়েন্টের দামের উপর ভিত্তি করে ((HL2) এবং এটিআর গুণকে হ্রাস করে বেস অবলম্বন করা হয়। মূল উদ্ভাবনটি হ’ল পুনরাবৃত্তিমূলক মসৃণকরণ প্রযুক্তি ব্যবহার করে চূড়ান্ত কক্ষপথ গণনা করা হয়, যা সূচকের স্থায়িত্ব এবং নির্ভরযোগ্যতা বাড়ায়।

  2. প্রবণতা বিচার লজিকট্রেন্ড নির্ধারণের জন্য, শেষের মূল্যের সাথে পূর্বের চূড়ান্ত কক্ষপথের সম্পর্কের তুলনা করা হয়। যখন শেষের দামটি উঁচুতে উঠে যায়, তখন প্রবণতাটি উপরে যায়; যখন এটি নীচে যায়, তখন প্রবণতাটি নীচে যায়; অন্যথায়, মূল প্রবণতা বজায় থাকে।

  3. সংকেত উৎপন্ন করার প্রক্রিয়া: যখন ট্রেন্ড নিম্ন থেকে উচ্চতর হয় তখন একটি ক্রয় সংকেত তৈরি করে; যখন ট্রেন্ড উচ্চ থেকে নিম্নের দিকে যায় তখন একটি বিক্রয় সংকেত তৈরি করে।

  4. গ্রুপ ট্রেডিং ব্যবস্থাপনাকৌশলটি একই দিকের লেনদেনকে একটি গোষ্ঠীতে ভাগ করে এবং প্রতিটি লেনদেনের জন্য প্রাথমিক স্টপ লস স্তর (সুপারট্রেন্ড মান) রেকর্ড করে। এটি সিস্টেমকে একাধিক সম্পর্কিত লেনদেনকে একত্রে পরিচালনা করতে এবং তহবিলের দক্ষতা বাড়াতে সক্ষম করে।

  5. ডায়নামিক অবস্থান গণনাসূত্র অনুসারেঃmath.floor(strategy.equity * 0.01 / stopDistance)প্রতি লেনদেনের জন্য পজিশনের আকার গণনা করুন এবং নিশ্চিত করুন যে প্রতি লেনদেনের জন্য অ্যাকাউন্টের মাত্র 1% ঝুঁকি রয়েছে।

  6. রিস্ক রিটার্ন সেটিংসিস্টেমটি স্বয়ংক্রিয়ভাবে প্রতিটি ট্রেডের জন্য 5: 1 এর ঝুঁকি-ফেরতের অনুপাত সেট করে, যার অর্থ হল স্টপ-ডাউন লক্ষ্যটি স্টপ-ডাউন দূরত্বের 5 গুণ বেশি, যা কৌশলটির প্রত্যাশিত আয়কে উল্লেখযোগ্যভাবে উন্নত করে।

  7. স্মার্ট ক্যাচতিনটি প্রস্থান শর্ত রয়েছেঃ স্টপ (প্রাথমিক সুপারট্রেন্ডের স্তর), স্টপ (প্রাথমিক সুপারট্রেন্ডের 5 গুণ স্টপ দূরত্ব) এবং প্রবণতা বিপরীত হওয়ার সময় (ক্ষতি, স্টপ লক্ষ্যমাত্রা অর্জন বা ব্যানার পজিশনে স্থানান্তর) ।

কৌশলগত সুবিধা

এই কৌশলটির বেশ কিছু উল্লেখযোগ্য সুবিধা রয়েছেঃ

  1. বিজ্ঞানের ঝুঁকি নিয়ন্ত্রণ: ডায়নামিক পজিশন অ্যাডজাস্টমেন্টের মাধ্যমে, প্রতিটি লেনদেনের জন্য মোট মূলধনের মাত্র ১% ঝুঁকি নিশ্চিত করা, একক লেনদেনের জন্য নেমে যাওয়ার ঝুঁকি কার্যকরভাবে নিয়ন্ত্রণ করা।

  2. ট্রেন্ড ট্র্যাকিং ক্ষমতা বৃদ্ধিবিভাগীয় ট্রেডিং পদ্ধতি সিস্টেমকে একই প্রবণতায় একাধিকবার প্রবেশের অনুমতি দেয়, যা ধারাবাহিকভাবে শক্তিশালী প্রবণতার লাভকে আরও ভালভাবে ক্যাপচার করতে পারে।

  3. অপ্টিমাইজড রিস্ক-রিটার্ন অনুপাত০ঃ৫ঃ১ এর ফিক্সড রিস্ক রিটার্ন সেটিং সফল ট্রেডিংয়ের জন্য লাভকে ক্ষতিগ্রস্ত ট্রেডিংয়ের ক্ষতির চেয়ে অনেক বেশি করে তোলে, যা দীর্ঘমেয়াদে সিস্টেমের প্রত্যাশিত আয়কে উন্নত করে।

  4. নমনীয় পজিশন ব্যবস্থাপনা: বর্তমান বাজারের অস্থিরতা এবং অ্যাকাউন্টের আকারের গতিশীলতার উপর ভিত্তি করে প্রবেশের অবস্থান গণনা করা হয়েছে, স্থির অবস্থানের সাথে যুক্ত ঝুঁকির ভারসাম্যহীনতা এড়ানো হয়েছে।

  5. স্মার্ট বিপরীত ব্যবস্থাপনাপ্রবণতা বিপরীত হলে, সিস্টেমটি বর্তমান লাভজনক অবস্থার উপর ভিত্তি করে একটি বুদ্ধিমান প্রস্থান বেছে নেবে, যার মধ্যে রয়েছে ক্ষতি গ্রহণ করা, মুনাফা অর্জন করা, বা একটি নতুন দিকে যাওয়ার আগে মূলধন স্থানান্তর করা।

  6. সুপারট্রেন্ডের পুনরাবৃত্ত সমতলতা: ফাইনাল কক্ষপথের রেঞ্জের পুনরাবৃত্তিমূলক গণনা দ্বারা, মিথ্যা সংকেত হ্রাস করা হয়েছে এবং প্রবণতা বিচার করার জন্য নির্ভরযোগ্যতা বৃদ্ধি করা হয়েছে।

  7. সম্পূর্ণ স্বয়ংক্রিয়: সমস্ত প্যারামিটার এবং শর্তাদি স্পষ্টভাবে সংজ্ঞায়িত করা হয়েছে, যা সম্পূর্ণরূপে স্বয়ংক্রিয় লেনদেনের জন্য উপযুক্ত, যা মানুষের হস্তক্ষেপ এবং আবেগের প্রভাবকে হ্রাস করে।

কৌশলগত ঝুঁকি

যদিও এই কৌশলটি সুন্দরভাবে পরিকল্পিত, তবুও এর কিছু সম্ভাব্য ঝুঁকি রয়েছেঃ

  1. অতিরিক্ত ঝুঁকি: যদিও প্রতিবার মাত্র ১% ঝুঁকি থাকে, পিরামিডিং সেট করা ৫০০ এ শক্তিশালী একমুখী প্রবণতায় অতিরিক্ত পজিশন জমা হতে পারে। ব্যক্তিগত ঝুঁকি সহনশীলতার উপর ভিত্তি করে পিরামিডিং প্যারামিটারটি কমিয়ে আনার পরামর্শ দেওয়া হয়।

  2. দ্রুত বিপর্যয়ের ঝুঁকি: বাজারের তীব্র অস্থিরতার সময় দামের হার হ্রাসের মাত্রা অতিক্রম করতে পারে এবং প্রকৃত ক্ষতির প্রত্যাশার চেয়ে 1% বেশি হতে পারে। উচ্চ অস্থিরতার বাজারে ঝুঁকির অনুপাত হ্রাস বা অতিরিক্ত অস্থিরতা ফিল্টার যুক্ত করার পরামর্শ দেওয়া হয়েছে।

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

  4. ট্রেন্ড মার্কেট নির্ভরতাট্রেন্ড ট্র্যাকিং সিস্টেম হিসেবে, এই কৌশলটি ঘন ঘন ক্ষতিগ্রস্ত লেনদেনের কারণ হতে পারে।

  5. তহবিল ব্যবস্থাপনা ঝুঁকি: যদিও একক ঝুঁকি 1% সীমাবদ্ধ, একাধিক একযোগে সক্রিয় ট্রেডিং গ্রুপ সাময়িকভাবে গ্রহণযোগ্য স্তরের উপরে মোট ঝুঁকির কারণ হতে পারে। অতিরিক্ত সামগ্রিক ঝুঁকি সীমাবদ্ধতা সেট করার পরামর্শ দেওয়া হয়, যেমন সর্বাধিক অনুমোদিত একযোগে ক্ষতির পরিমাণ 5% এর বেশি নয়।

কৌশল অপ্টিমাইজেশনের দিকনির্দেশনা

কৌশলটির নকশা এবং সম্ভাব্য ঝুঁকির উপর নির্ভর করে নিম্নলিখিত অপ্টিমাইজেশান দিকগুলি বিবেচনা করা যেতে পারেঃ

  1. প্রবণতা শক্তি ফিল্টার যোগ করুন: ADX বা অনুরূপ সূচকগুলির সাথে মিলিত, ট্রেডিং কেবলমাত্র যখন প্রবণতা যথেষ্ট শক্তিশালী হয়, বাজারের ঝাঁকুনিতে মিথ্যা সংকেত হ্রাস করে।adxValue = ta.adx(14)গণনা এবং সেটstrongTrend = adxValue > 25অতিরিক্ত প্রবেশের শর্ত হিসেবেঃ

  2. ডায়নামিক রিস্ক-রিটার্ন অনুপাত: বাজারের অস্থিরতার উপর ভিত্তি করে স্বয়ংক্রিয়ভাবে রিস্ক রিটার্নের অনুপাতটি সামঞ্জস্য করুন, কম ওঠানামা চলাকালীন উচ্চতর রিটার্নের অনুপাতটি ব্যবহার করুন, উচ্চ ওঠানামা চলাকালীন রিটার্নের অনুপাতটি হ্রাস করুন। দীর্ঘমেয়াদী এটিআরকে বর্তমান এটিআরের অনুপাতের তুলনায় গণনা করে গতিশীলভাবে সামঞ্জস্য করা যেতে পারে।

  3. মুনাফা অর্জনের কিছু পদ্ধতি যোগ করা: কিছু পজিশনের জন্য একটি ব্যাচেল প্রফিট সিস্টেম ডিজাইন করা হয়েছে, যেমন ২ গুণ স্টপ লস দূরত্ব অর্জনের সময় ২৫% লাভ, ৩ গুণ হলে ২৫% লাভ, ৫০% পজিশনের জন্য ৫ গুণ লক্ষ্য রাখার জন্য। এটি সামগ্রিকভাবে লাভের সম্ভাবনা বাড়িয়ে তুলতে পারে।

  4. স্মার্ট শর্তাদির অপ্টিমাইজেশন: ট্রেন্ড সিগন্যাল ছাড়াও, পজিশন যোগ করার জন্য অতিরিক্ত শর্ত রয়েছে, যেমন নির্দিষ্ট গতিশীলতা চলার পরে পজিশন যোগ করার অনুমতি দেওয়া, দামের সমাপ্তির সময় অত্যধিক পজিশন যোগ করা এড়ানো।

  5. মাল্টিটাইম ফ্রেম বিশ্লেষণট্রেন্ড নিশ্চিতকরণঃ ট্রেন্ড নিশ্চিতকরণ যুক্ত করুন, কেবলমাত্র যখন একাধিক টাইম ফ্রেমের ট্রেন্ডগুলি একত্রিত হয় তখনই ট্রেড করুন, এন্ট্রি গুণমান উন্নত করুন।

  6. সর্বোচ্চ খোলার সীমা যোগ করুন: অ্যাকাউন্টের মোট ঝুঁকির প্রান্তিকের সর্বোচ্চ সীমা নির্ধারণ করুন, যখন সর্বোচ্চ সীমা (যেমন মোট তহবিলের ৫%) পৌঁছে যায়, নতুন প্রবেশের সংকেত স্থগিত করুন যতক্ষণ না ঝুঁকি হ্রাস পায়।

  7. সুপারট্রেন্ড গণনা অপ্টিমাইজ করুন: সুপারট্রেন্ড সূচকগুলির সমন্বয় বিবেচনা করুন যা একাধিক চক্র বা একাধিক গুণক ব্যবহার করে, একটি ভোটদান সিস্টেমের মাধ্যমে প্রবণতা বিচারের নির্ভুলতা বাড়িয়ে তোলে।

সারসংক্ষেপ

ডায়নামিক ফান্ড ম্যানেজমেন্ট সুপারট্রেন্ড ট্রেন্ড ট্র্যাকিং 5x ঝুঁকি রিটার্ন কৌশল একটি অত্যন্ত উন্নত ট্রেন্ড ট্র্যাকিং সিস্টেম যা সঠিক প্রবণতা সনাক্তকরণ এবং বৈজ্ঞানিক তহবিল পরিচালনার সাথে নিখুঁতভাবে একত্রিত করে। গতিশীল অবস্থানের গণনা, গ্রুপ ট্রেডিং ম্যানেজমেন্ট এবং একটি অনুকূলিত 5: 1 ঝুঁকি রিটার্ন সেটিংয়ের মাধ্যমে, কৌশলটি ঝুঁকি নিয়ন্ত্রণের সাথে সাথে প্রবণতা ক্যাপচার করার ক্ষমতা সর্বাধিক করে তোলে।

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

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

ট্রেডারদের জন্য যারা বৈজ্ঞানিক, পদ্ধতিগত প্রবণতা ট্র্যাকিং পদ্ধতির সন্ধান করছেন, এই কৌশলটি একটি শক্ত কাঠামো সরবরাহ করে যা সরাসরি প্রয়োগ করা যেতে পারে এবং আরও ব্যক্তিগতকৃত কাস্টমাইজেশনের ভিত্তি হিসাবে কাজ করতে পারে। সতর্কতার সাথে প্যারামিটার নির্বাচন এবং ক্রমাগত কৌশলগত পর্যবেক্ষণের মাধ্যমে, এই সিস্টেমটি বিভিন্ন বাজারের পরিবেশে স্থিতিশীল দীর্ঘমেয়াদী পারফরম্যান্সের সম্ভাবনা রাখে।

কৌশল সোর্স কোড
/*backtest
start: 2024-03-31 00:00:00
end: 2025-03-29 08:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"ETH_USDT"}]
*/

//@version=6
strategy("Grouped SuperTrend Strategy 5x – All Signals", overlay=true, initial_capital=100000, default_qty_type=strategy.fixed, default_qty_value=0, pyramiding=500, calc_on_order_fills=true)

// INPUTS
atrPeriod     = input.int(10, title="ATR Period")
atrMultiplier = input.float(3.0, title="ATR Multiplier")

// CALCULATE ATR & BASIC BANDS
atrValue    = ta.atr(atrPeriod)
hl2         = (high + low) / 2
upperBasic  = hl2 + atrMultiplier * atrValue
lowerBasic  = hl2 - atrMultiplier * atrValue

// CALCULATE FINAL BANDS (recursive smoothing)
var float finalUpperBand = na
var float finalLowerBand = na
finalUpperBand := na(finalUpperBand[1]) ? upperBasic : (upperBasic < finalUpperBand[1] or close[1] > finalUpperBand[1] ? upperBasic : finalUpperBand[1])
finalLowerBand := na(finalLowerBand[1]) ? lowerBasic : (lowerBasic > finalLowerBand[1] or close[1] < finalLowerBand[1] ? lowerBasic : finalLowerBand[1])

// DETERMINE TREND
var int trend = 1
trend := nz(trend[1], 1)
if close > finalUpperBand[1]
    trend := 1
else if close < finalLowerBand[1]
    trend := -1
else
    trend := nz(trend[1], 1)
    
// SUPER TREND VALUE: For an uptrend use finalLowerBand, for a downtrend use finalUpperBand.
superTrend = trend == 1 ? finalLowerBand : finalUpperBand

// SIGNALS: A change in trend generates a signal.
buySignal  = (trend == 1 and nz(trend[1], 1) == -1)
sellSignal = (trend == -1 and nz(trend[1], 1) == 1)

// Plot SuperTrend
plot(superTrend, color = trend == 1 ? color.green : color.red, title="SuperTrend")

// POSITION SIZING FUNCTION: Risk 1% of equity per signal based on the stop distance.
calc_qty(stopDistance) =>
    stopDistance > 0 ? math.floor(strategy.equity * 0.01 / stopDistance) : 0

// ─── GROUPING VARIABLES ─────────────────────────────
// When a new group trade is initiated (position goes from flat to non‑zero),
// record the SuperTrend value as the group’s initial stop.
var float groupInitialStop = na
if strategy.position_size == 0
    groupInitialStop := na
if strategy.position_size != 0 and strategy.position_size[1] == 0
    groupInitialStop := superTrend

// Declare groupStopDistance and groupProfitTarget with explicit type.
var float groupStopDistance = na
var float groupProfitTarget = na
if strategy.position_size > 0
    groupStopDistance := strategy.position_avg_price - groupInitialStop
    groupProfitTarget := strategy.position_avg_price + 5 * groupStopDistance
else if strategy.position_size < 0
    groupStopDistance := groupInitialStop - strategy.position_avg_price
    groupProfitTarget := strategy.position_avg_price - 5 * groupStopDistance

// ─── ENTRY LOGIC ─────────────────────────────
// Every SuperTrend signal is taken.
// For same‑direction signals (or when flat), add to the group.
// For reversal signals, exit the existing group per our conditions and then enter the new direction.

// LONG ENTRIES
if buySignal
    // Reversal: if currently short, exit short first.
    if strategy.position_size < 0
        // For shorts, a loss is when close > avg entry.
        if close > strategy.position_avg_price
            strategy.close("Short", comment="Short Reversal Loss Exit")
        // For shorts, profit when price is below the profit target.
        else if close <= groupProfitTarget
            strategy.close("Short", comment="Short Reversal Profit Target Exit")
        else
            // Otherwise, update exit to break-even.
            strategy.exit("Short_BE", from_entry="Short", stop=strategy.position_avg_price, comment="Short BE Trailing")
        // Enter new long trade.
        stopDist = close - superTrend
        qty = calc_qty(stopDist)
        if qty > 0
            strategy.entry("Long", strategy.long, qty=qty, comment="Long Entry on Reversal")
        // Reset group initial stop for new group.
        groupInitialStop := superTrend
    else
        // Flat or already long – add to the long group.
        stopDist = close - superTrend
        qty = calc_qty(stopDist)
        if qty > 0
            strategy.entry("Long", strategy.long, qty=qty, comment="Long Add Entry")

// SHORT ENTRIES
if sellSignal
    if strategy.position_size > 0
        // Reversal: if currently long, exit long first.
        if close < strategy.position_avg_price
            strategy.close("Long", comment="Long Reversal Loss Exit")
        else if close >= groupProfitTarget
            strategy.close("Long", comment="Long Reversal Profit Target Exit")
        else
            strategy.exit("Long_BE", from_entry="Long", stop=strategy.position_avg_price, comment="Long BE Trailing")
        // Enter new short trade.
        stopDist = superTrend - close
        qty = calc_qty(stopDist)
        if qty > 0
            strategy.entry("Short", strategy.short, qty=qty, comment="Short Entry on Reversal")
        groupInitialStop := superTrend
    else
        // Flat or already short – add to the short group.
        stopDist = superTrend - close
        qty = calc_qty(stopDist)
        if qty > 0
            strategy.entry("Short", strategy.short, qty=qty, comment="Short Add Entry")

// ─── EXIT ORDERS ─────────────────────────────
// Set default aggregated exit orders based on the group’s initial stop and profit target.
if strategy.position_size > 0
    strategy.exit("LongExit", from_entry="Long", stop=groupInitialStop, limit=groupProfitTarget)
if strategy.position_size < 0
    strategy.exit("ShortExit", from_entry="Short", stop=groupInitialStop, limit=groupProfitTarget)