নিম্ন-উচ্চ প্রবণতা কৌশল

লেখক:চাওঝাং, তারিখ: ২০২৩-১১-২৩ ১১ঃ৩৩ঃ১৮
ট্যাগঃ

img

সারসংক্ষেপ

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

কৌশলগত যুক্তি

সর্বোচ্চ এবং সর্বনিম্ন মূল্য গণনা

  • সর্বনিম্ন মূল্য (নিম্ন মানদণ্ড): ব্যবহারকারীর দ্বারা সেট করা পুনর্বিবেচনার সময়কালের সর্বনিম্ন মূল্য গণনা করার জন্য ta.lowest ফাংশনটি কল করুন (ডিফল্ট 20 বার) এবং সর্বনিম্ন মূল্য লাইনটি গ্রাফ করুন।

  • সর্বোচ্চ মূল্য (উচ্চ মানদণ্ড): ব্যবহারকারীর দ্বারা সেট করা পুনর্বিবেচনার সময়কালে সর্বোচ্চ মূল্য গণনা করার জন্য ta.highest ফাংশনটি কল করুন (ডিফল্ট 10 বার) এবং সর্বোচ্চ মূল্য লাইনটি গ্রাফ করুন।

প্রবেশ সংকেত

যখন বর্তমান মূল্য সর্বনিম্ন মূল্য রেখা অতিক্রম করে, তখন একটি দীর্ঘ অবস্থান প্রতিষ্ঠার জন্য একটি ক্রয় সংকেত সক্রিয় করা হয়।

প্রস্থান সংকেত

বিকল্পের জন্য দুটি প্রস্থান পদ্ধতি রয়েছেঃ

  1. ফিক্সড টেক লাভঃ যখন মূল্য পূর্বনির্ধারিত টেক লাভের স্তরে পৌঁছে যায় (যেমন প্রবেশ মূল্যের 8% উপরে) তখন মুনাফা অর্জনের জন্য অবস্থান বন্ধ করুন।

  2. সর্বোচ্চ মূল্যের বিভাজনঃ ট্রেন্ড বিপরীত হওয়ার কারণে যখন মূল্য সর্বোচ্চ মূল্যের লাইনের নিচে পড়ে তখন ক্ষতি কমাতে পজিশন বন্ধ করুন।

প্রবণতা ফিল্টার

প্রবণতা দিক নির্ধারণের জন্য একটি ইএমএ লাইন যুক্ত করুন। যখন দাম ইএমএ লাইনের উপরে থাকে (একটি আপট্রেন্ড) তখনই কেনার অনুমতি দিন। এই ফিল্টারটি সক্ষম বা নিষ্ক্রিয় করা যেতে পারে।

সুবিধা বিশ্লেষণ

  • বাজারের মূলনীতির সাথে সামঞ্জস্য রেখে কম কিনতে এবং বেশি বিক্রি করার ক্লাসিক কৌশল গ্রহণ করুন।

  • দামের ওঠানামা চলাকালীন ঘন ঘন খোলা এড়াতে প্রবণতা বিচার যোগ করুন।

  • উচ্চ মুনাফা অর্জন বা ক্ষতি হ্রাস করার জন্য দুটি প্রস্থান বিকল্প সরবরাহ করুন।

  • কাস্টমাইজযোগ্য প্যারামিটারগুলি আরও বেশি বাজারের পরিবেশে মানিয়ে নিতে পারে।

  • প্যারামিটার টিউনিং, ফিল্টার ডিজাইন ইত্যাদির মাধ্যমে কৌশল অপ্টিমাইজেশনের জন্য বিশাল জায়গা।

ঝুঁকি বিশ্লেষণ

  • স্থির লাভের স্তর প্রকৃত বাজারের গতিবিধিগুলির ভিত্তিতে সামঞ্জস্য করতে ব্যর্থ হয়, যার ফলে অকাল লাভ বা অপর্যাপ্ত লাভের লক্ষ্যমাত্রা হয়।

  • সর্বোচ্চ দামের বেতনে বিক্রি করলে ইতিমধ্যেই বিপুল ক্ষতি হতে পারে, যা কার্যকরভাবে নিয়ন্ত্রণ করা সম্ভব নয়।

  • ইএমএ-র প্রবণতা মূল্যায়ন শুধুমাত্র একটি নির্দিষ্ট সময়ের দিকে তাকায়, সম্ভবত প্রকৃত প্রবণতা পরিবর্তনের চেয়ে পিছিয়ে থাকে।

  • ব্যাকটেস্টের ফলাফল ভবিষ্যতের প্রতিনিধিত্ব করতে পারে না। লাইভ পারফরম্যান্স অনিশ্চয়তা আছে।

অপ্টিমাইজেশান নির্দেশাবলী

  • লাভের মাত্রা গতিশীলভাবে সামঞ্জস্য করার জন্য ট্রেলিং স্টপ, আংশিক প্রস্থান ইত্যাদির মতো লাভ গ্রহণের পদ্ধতি যুক্ত করুন।

  • সিগন্যাল অপ্টিমাইজ করুন, উদাহরণস্বরূপ আংশিক প্রস্থান, অন্যান্য সূচক যোগ করুন।

  • আরও সূচক বা মেশিন লার্নিং অন্তর্ভুক্ত করে প্রবণতা বিচারকে উন্নত করুন।

  • সর্বোত্তম সেট খুঁজে পেতে আরও বিস্তৃত ব্যাকটেস্ট দ্বারা পরামিতি অপ্টিমাইজ করুন।

  • হ্রাস নিয়ন্ত্রণের জন্য স্টপ লস পদ্ধতি যোগ করুন।

সংক্ষিপ্তসার

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


/*backtest
start: 2022-11-16 00:00:00
end: 2023-11-22 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// @version=5
// Author = TradeAutomation


strategy(title="Low-High-Trend Strategy", shorttitle="Low-High-Trend Strategy", process_orders_on_close=true, overlay=true, commission_type=strategy.commission.cash_per_order, commission_value=1, slippage=3, initial_capital = 25000, margin_long=50, margin_short=50, default_qty_type=strategy.percent_of_equity, default_qty_value=110)


// Backtest Date Range Inputs // 
StartTime = input(defval=timestamp('01 Jan 2000 05:00 +0000'), title='Start Time')
EndTime = input(defval=timestamp('01 Jan 2099 00:00 +0000'), title='End Time')
InDateRange = true

// Strategy Calculations //
lowcriteria = ta.lowest(close, input(20, "Lowest Price Lookback", tooltip="The strategy will BUY when the price crosses over the lowest it has been in the last X amount of bars"))[1]
highcriteria = ta.highest(close, input(10, "Highest Price Lookback", tooltip="If Take-Profit is not checked, the strategy will SELL when the price crosses under the highest it has been in the last X amount of bars"))[1]
plot(highcriteria, color=color.green)
plot(lowcriteria, color=color.red)

// Take Profit //
TakeProfitInput = input(true, "Sell with Take-Profit % intead of highest price cross?")
TakeProfit = ta.crossover(close,strategy.position_avg_price*(1+(.01*input.float(8, title="Take Profit %", step=.25))))

// Operational Functions //
TrendFilterInput = input(true, "Only buy when price is above EMA trend?")
ema = ta.ema(close, input(200, "EMA Length"))
TrendisLong = (close>ema)
plot(ema)

// Entry & Exit Functions//
if (InDateRange and TrendFilterInput==true)
    strategy.entry("Long", strategy.long, when = ta.crossover(close, lowcriteria) and TrendisLong)
if (InDateRange and TrendFilterInput==false)
    strategy.entry("Long", strategy.long, when = ta.crossover(close, lowcriteria))
if (InDateRange and TakeProfitInput==true)
    strategy.close("Long", when = TakeProfit)
if (InDateRange and TakeProfitInput==false)
    strategy.close("Long", when = ta.crossunder(close, highcriteria))
if (not InDateRange)
    strategy.close_all()
    

আরো