কমোডিটি সেলেকশন ইনডেক্স (সিএসআই) কৌশল একটি স্বল্পমেয়াদী ট্রেডিং কৌশল যা বাজারের গতিবেগ ট্র্যাক করে। এটি ট্রেডিংয়ের জন্য পণ্যগুলির প্রবণতা এবং অস্থিরতা গণনা করে শক্তিশালী গতিবেগ সহ পণ্যগুলি সনাক্ত করে। এই কৌশলটি ওয়েলস ওয়াইল্ডার তার বইয়ে প্রস্তাব করেছিলেন প্রযুক্তিগত ট্রেডিং সিস্টেমে নতুন ধারণাগুলি।
এই কৌশলটির মূল সূচক হল সিএসআই সূচক, যা পণ্যগুলির প্রবণতা এবং অস্থিরতা বিবেচনা করে।
CSI = K × ATR × ((ADX + ADX এর n দিনের চলমান গড়) / 2)
যেখানে K একটি স্কেলিং ফ্যাক্টর, ATR গড় সত্য পরিসীমা প্রতিনিধিত্ব করে, যা বাজারের অস্থিরতা পরিমাপ করে। ADX গড় দিকনির্দেশক সূচক প্রতিনিধিত্ব করে, যা বাজারের প্রবণতা প্রতিফলিত করে।
প্রতিটি পণ্যের সিএসআই সূচকের মান গণনা করে এবং এটির এন-দিনের সহজ চলমান গড়ের সাথে তুলনা করে, যখন সিএসআই তার চলমান গড়ের চেয়ে বেশি হয় তখন একটি ক্রয় সংকেত উত্পন্ন হয় এবং যখন সিএসআই তার চলমান গড়ের চেয়ে কম হয় তখন একটি বিক্রয় সংকেত উত্পন্ন হয়।
কৌশলটি তুলনামূলকভাবে উচ্চ সিএসআই সূচক সহ পণ্যগুলিকে ট্রেডিংয়ের জন্য নির্বাচন করে। কারণ এই পণ্যগুলির খুব শক্তিশালী প্রবণতা এবং ওঠানামা রয়েছে যা স্বল্পমেয়াদে বৃহত্তর মুনাফা সম্ভাবনা তৈরি করতে পারে।
এই কৌশল নিম্নলিখিত সুবিধাগুলি আছেঃ
এই কৌশলের কিছু ঝুঁকিও রয়েছে:
ঝুঁকি নিয়ন্ত্রণের জন্য, স্টপ লস পজিশনগুলিকে যুক্তিসঙ্গতভাবে সেট করা উচিত, একক পজিশনের আকার নিয়ন্ত্রণ করা উচিত এবং বিভিন্ন বাজারের পরিবেশে উপযুক্তভাবে পরামিতিগুলি সামঞ্জস্য করা উচিত।
কৌশলটি নিম্নলিখিত দিকগুলিতে অপ্টিমাইজ করা যেতে পারেঃ
পণ্য গতি সূচক কৌশলটি বাজারে শক্তিশালী প্রবণতা এবং উচ্চ অস্থিরতার সাথে পণ্যগুলি ক্যাপচার করে সহজ এবং দ্রুত স্বল্পমেয়াদী ট্রেডিং উপলব্ধি করে। গতি ট্র্যাকিংয়ের এই বিশেষায়িত পদ্ধতিটি এর সংকেতগুলিকে স্পষ্ট এবং অ্যালগরিদমিকভাবে বাস্তবায়ন করা সহজ করে তোলে। অবশ্যই, ঝুঁকি নিয়ন্ত্রণে মনোযোগ দেওয়া এবং বাজারের অবস্থার পরিবর্তনের সাথে খাপ খাইয়ে নেওয়ার জন্য উন্নতি এবং আপগ্রেড চালিয়ে যাওয়াও প্রয়োজনীয়।
/*backtest start: 2023-10-28 00:00:00 end: 2023-11-27 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 //////////////////////////////////////////////////////////// // Copyright by HPotter v1.0 20/03/2019 // The Commodity Selection Index ("CSI") is a momentum indicator. It was // developed by Welles Wilder and is presented in his book New Concepts in // Technical Trading Systems. The name of the index reflects its primary purpose. // That is, to help select commodities suitable for short-term trading. // A high CSI rating indicates that the commodity has strong trending and volatility // characteristics. The trending characteristics are brought out by the Directional // Movement factor in the calculation--the volatility characteristic by the Average // True Range factor. // Wilder's approach is to trade commodities with high CSI values (relative to other // commodities). Because these commodities are highly volatile, they have the potential // to make the "most money in the shortest period of time." High CSI values imply // trending characteristics which make it easier to trade the security. // The Commodity Selection Index is designed for short-term traders who can handle // the risks associated with highly volatile markets. // // WARNING: // - For purpose educate only // - This script to change bars colors. //////////////////////////////////////////////////////////// fADX(Len) => up = change(high) down = -change(low) trur = rma(tr, Len) plus = fixnan(100 * rma(up > down and up > 0 ? up : 0, Len) / trur) minus = fixnan(100 * rma(down > up and down > 0 ? down : 0, Len) / trur) sum = plus + minus 100 * rma(abs(plus - minus) / (sum == 0 ? 1 : sum), Len) strategy(title="Commodity Selection Index Backtest", shorttitle="CSI Backtest") PointValue = input(50) Margin = input(3000) Commission = input(10) Length = input(14) reverse = input(false, title="Trade reverse") K = 100 * ((PointValue / sqrt(Margin) / (150 + Commission))) xATR = atr(Length) xADX = fADX(Length) nADXR = (xADX + xADX[Length]) * 0.5 xCSI = K * xATR * nADXR xMACSI = sma(xCSI, Length) pos = 0.0 pos := iff(xCSI < xMACSI, 1, iff(xCSI > xMACSI, -1, nz(pos[1], 0))) possig = iff(reverse and pos == 1, -1, iff(reverse and pos == -1, 1, pos)) if (possig == 1) strategy.entry("Long", strategy.long) if (possig == -1) strategy.entry("Short", strategy.short) barcolor(possig == -1 ? red: possig == 1 ? green : blue ) plot(xCSI, color=green, title="CSI") plot(xMACSI, color=red, title="CSI SMA")