ডাবল টার্টেল অগ্রগতি কৌশল

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

img

সারসংক্ষেপ

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

কৌশল নীতি

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

নির্দিষ্ট অপারেশন ধাপগুলি হলঃ

  1. বড় চক্র (20 চক্র) উচ্চ পয়েন্ট পূর্ব উচ্চ এবং ছোট চক্র (4 চক্র) উচ্চ পয়েন্ট ছোটPeriodHigh গণনা করুন।

  2. যখন সর্বশেষ K-লাইন এর উচ্চতা prevHigh এর চেয়ে বড়, এবং prevHigh ছোটPeriodHigh এর চেয়ে বড় হয়, এটি নির্দেশ করে যে বড় চক্রের উচ্চতা ছোট চক্রের উচ্চতার মাধ্যমে ভেঙে যায়। এই সময়ে, যদি কোনও অবস্থান না থাকে, তবে শর্ট যান।

  3. একটি পজিশন খোলার পর, একটি চলমান স্টপ লস সেট করুন। স্টপ লস অর্ডারটি বাতিল করার আগে পজিশনটি বিপরীত হওয়ার জন্য অপেক্ষা করুন।

  4. যখন হোল্ডিং পরিমাণ সেট মুভিং লাভ নিন চক্র সংখ্যা (বর্তমানে 0 চক্র) পৌঁছায়, পরবর্তী চক্রের মধ্যে অবস্থানের অর্ধেক প্রস্থান, এবং একটি চলমান স্টপ লস সেট আপ করুন এবং স্প্রেড ট্র্যাক এবং লাভ লক করতে মুভিং লাভ নিন।

  5. নিম্ন পয়েন্টগুলির জন্য, বড় চক্রের নিম্ন এবং ছোট চক্রের নিম্নের মধ্যে অগ্রগতি সম্পর্কগুলির উপর ভিত্তি করে দীর্ঘ পজিশনগুলি প্রতিষ্ঠিত হয়।

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

এটি একটি অত্যন্ত বিস্তৃত অগ্রগতির কৌশল যার নিম্নলিখিত সুবিধাগুলি রয়েছেঃ

  1. ডাবল চক্রের টর্টল ট্রেডিংয়ের সংমিশ্রণ কার্যকরভাবে অগ্রগতির সংকেত সনাক্ত করতে পারে।

  2. স্টপ লস এবং লাভ নেওয়ার কৌশল ব্যবহার করে ঝুঁকিগুলি কঠোরভাবে নিয়ন্ত্রণ করা হয় এবং বিশাল ক্ষতি এড়ানো হয়।

  3. দুই ধাপে বেরিয়ে আসা, এক সময়ে অর্ধেক মুনাফা অর্জন করা, তারপর মুনাফা অর্জন করে পুরোপুরি বেরিয়ে আসা, মুনাফা অর্জন করা।

  4. উভয় দীর্ঘ এবং সংক্ষিপ্ত লেনদেন বিবেচনা করুন, বিকল্প মাল্টি-খালি বাজারের বৈশিষ্ট্যগুলির সাথে মিলে যায়।

  5. শক্তিশালী বাস্তব ট্রেডিং পারফরম্যান্সের সাথে চমৎকার ব্যাকটেস্টিং ফলাফল।

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

মূল ঝুঁকি এবং প্রতিরোধমূলক ব্যবস্থা নিম্নরূপঃ

  1. মিথ্যা অগ্রগতির ঝুঁকি। অগ্রগতির বৈধতা নিশ্চিত করার জন্য চক্রের পরামিতিগুলি যথাযথভাবে সামঞ্জস্য করুন।

  2. ধাওয়া করার ঝুঁকি বৃদ্ধি পায় এবং হত্যা হ্রাস পায়। প্রবণতা এবং নিদর্শনগুলির সাথে ফিল্টারিং একত্রিত করা উচিত যাতে প্রবণতার শেষে পজিশন খোলা যায় না।

  3. স্টপ লসের ঝুঁকি ধুয়ে ফেলা। পর্যাপ্ত স্থান নিশ্চিত করার জন্য স্টপ লসের প্রশস্ততা যথাযথভাবে শিথিল করুন।

  4. অত্যধিক সংবেদনশীল চলমান স্টপ হ্রাসের ঝুঁকি। অপ্রয়োজনীয় স্টপ আউট এড়াতে স্টপ হ্রাসের পরে স্লিপিং সেটিংস সামঞ্জস্য করুন।

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

কৌশলটি নিম্নলিখিত দিকগুলিতেও অপ্টিমাইজ করা যেতে পারেঃ

  1. ভলিউম ব্রুকথ্রু ফিল্টার যোগ করুন ব্রুকথ্রুগুলির সত্যতা নিশ্চিত করতে।

  2. প্রবণতার শেষে পজিশন খোলার থেকে বিরত থাকার জন্য প্রবণতা মূল্যায়ন সূচক যোগ করুন।

  3. সময় নির্ধারণের জন্য আরো সময় চক্র একত্রিত করুন।

  4. প্যারামিটারগুলির গতিশীল অপ্টিমাইজেশনের জন্য মেশিন লার্নিং অ্যালগরিদম বাড়ান।

  5. পরিসংখ্যানগত সালিশের জন্য অন্যান্য কৌশলগুলির সাথে একত্রিত করুন।

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

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


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

//@version=3
strategy(title = "Turtle soup plus one", shorttitle = "Turtle soup plus one", overlay=true)

bigPeriod = input(20)
smallPeriod = input(4)
takeProfitBars = input(0)
trailingStop = input(5, title = "Trailing stop percentages")
if (strategy.position_size == 0)
    strategy.cancel("Long")
    strategy.cancel("Short")
    strategy.cancel("Stop")



stopLossPrice = 0.1
stopLossPrice := nz(stopLossPrice[1])
takeProfitStarted = false
takeProfitStarted := nz(takeProfitStarted[1])

prevHigh = highest(high, bigPeriod - smallPeriod)[smallPeriod]
smallPeriodHigh = highest(high, smallPeriod - 1)[1]
if (high > prevHigh and prevHigh > smallPeriodHigh and close > prevHigh and strategy.position_size == 0)
    strategy.order("Short", strategy.short, stop = prevHigh)

if strategy.position_size < 0 and strategy.position_size[1] == 0
    stopLossPrice := high[1]
    strategy.order("Stop", strategy.long, qty = -strategy.position_size, stop = stopLossPrice)
    takeProfitStarted := false

if (strategy.position_size < 0 and sum(strategy.position_size, takeProfitBars) == strategy.position_size * takeProfitBars and close < strategy.position_avg_price and not takeProfitStarted)
    takeProfitStarted := true
    strategy.cancel("Stop")
    strategy.order("ExitHalf", strategy.long, qty = ceil(-strategy.position_size / 2), stop = close)
    if (strategy.position_size != -1)
        strategy.exit("ExitFull", "Short", qty = -strategy.position_size - ceil(-strategy.position_size / 2), loss = stopLossPrice, trail_price  = close, trail_offset = -(close - strategy.position_avg_price) * trailingStop / 100 / syminfo.mintick)
        

prevLow = lowest(low, bigPeriod - smallPeriod)[smallPeriod]
smallPeriodLow = lowest(low, smallPeriod - 1)[1]
if (low < prevLow and prevLow < smallPeriodLow and close < prevLow and strategy.position_size == 0)
    strategy.order("Long", strategy.long, stop = prevLow)

if strategy.position_size > 0 and strategy.position_size[1] == 0
    stopLossPrice := low[1]
    strategy.order("Stop", strategy.short, qty = strategy.position_size, stop = stopLossPrice)
    takeProfitStarted := false

if (strategy.position_size > 0 and sum(strategy.position_size, takeProfitBars) == strategy.position_size * takeProfitBars and close > strategy.position_avg_price and not takeProfitStarted)
    takeProfitStarted := true
    strategy.cancel("Stop")
    strategy.order("ExitHalf", strategy.short, qty = ceil(strategy.position_size / 2), stop = close)
    if (strategy.position_size != 1)
        strategy.exit("ExitFull", "Long", qty = strategy.position_size - ceil(strategy.position_size / 2),loss = stopLossPrice, trail_price  = close, trail_offset = (close - strategy.position_avg_price) * trailingStop / 100 / syminfo.mintick)

// === Backtesting Dates ===
testPeriodSwitch = input(false, "Custom Backtesting Dates")
testStartYear = input(2018, "Backtest Start Year")
testStartMonth = input(3, "Backtest Start Month")
testStartDay = input(6, "Backtest Start Day")
testStartHour = input(08, "Backtest Start Hour")
testPeriodStart = timestamp(testStartYear,testStartMonth,testStartDay,testStartHour,0)
testStopYear = input(2038, "Backtest Stop Year")
testStopMonth = input(12, "Backtest Stop Month")
testStopDay = input(14, "Backtest Stop Day")
testStopHour = input(14, "Backtest Stop Hour")
testPeriodStop = timestamp(testStopYear,testStopMonth,testStopDay,testStopHour,0)
testPeriod() =>
    time >= testPeriodStart and time <= testPeriodStop ? true : false
isPeriod = testPeriodSwitch == true ? testPeriod() : true
// === /END
if not isPeriod
    strategy.cancel_all()
    strategy.close_all()

আরো