K- লাইন ক্রমাগত সংখ্যা ষাঁড় এবং ভালুক রায় কৌশল

EMA ATR
সৃষ্টির তারিখ: 2024-05-17 13:54:06 অবশেষে সংশোধন করুন: 2024-05-17 13:54:06
অনুলিপি: 1 ক্লিকের সংখ্যা: 682
1
ফোকাস
1617
অনুসারী

K- লাইন ক্রমাগত সংখ্যা ষাঁড় এবং ভালুক রায় কৌশল

ওভারভিউ

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

কৌশল নীতি

  1. ক্রমাগত একাধিক মাথা এবং খালি মাথা শর্তের সংখ্যা রেকর্ড করুন। যদি বন্ধের দাম পূর্ববর্তী কে লাইনের চেয়ে বেশি হয়, তবে একাধিক মাথা গণনা 1 এবং খালি মাথা গণনা 0 এ পুনরায় সেট করুন; যদি বন্ধের দাম পূর্ববর্তী কে লাইনের চেয়ে কম হয়, তবে খালি মাথা গণনা 1 এবং খালি মাথা গণনা 0 এ পুনরায় সেট করুন; অন্যথায় উভয় গণনা 0 এ পুনরায় সেট করুন।
  2. যখন মাল্টি হেডের গণনা নির্দিষ্ট সংখ্যক k-এ পৌঁছায়, তখন মাল্টি হেড পজিশন খুলুন, স্টপ লস এবং স্টপস্টপ সেট করুন।
  3. মাল্টিপল পজিশনের ক্ষেত্রে, পজিশন খোলার পর সর্বোচ্চ মূল্য রেকর্ড করা হয়, যখন সর্বোচ্চ মূল্য পজিশন খোলার মূল্য iTGT এর সর্বনিম্ন পরিবর্তন ইউনিট অতিক্রম করে এবং বন্ধের মূল্য সর্বোচ্চ মূল্যের নীচে iPcnt% এ প্রত্যাহার করা হয়, তখন পজিশন খালি করা হয়।
  4. যখন খালি মাথা গণনা নির্ধারিত সংখ্যা k2 পৌঁছায়, খালি মাথা পজিশন খুলুন, স্টপ লস এবং স্টপ সেট করুন।
  5. খালি পজিশনের জন্য, পজিশন খোলার পর সর্বনিম্ন মূল্য রেকর্ড করা হয়, যখন সর্বনিম্ন মূল্য পজিশন খোলার মূল্যের আইটিজিটির সর্বনিম্ন পরিবর্তন ইউনিটের চেয়ে কম থাকে এবং বন্ধের মূল্যটি সর্বনিম্ন মূল্যের উপরে আইপিসিএনটি% পর্যন্ত রিবাউন্ড হয়, পজিশন খালি।

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

  1. সহজেই বোঝা যায়, ট্রেডিং সিদ্ধান্ত গ্রহণের জন্য K-লাইন এর ধারাবাহিকতার উপর ভিত্তি করে, এবং লজিকের স্বচ্ছতা।
  2. মুভিং স্টপ ব্যবস্থা চালু করা হয়েছে, যাতে মুনাফা সুরক্ষিত থাকে যখন দাম অনুকূল দিক থেকে কিছু দূরত্ব অতিক্রম করে।
  3. স্টপ লস এবং স্টপ-অফ সেটিংগুলি কার্যকরভাবে ঝুঁকি নিয়ন্ত্রণ করে এবং মুনাফা লক করে।
  4. বিভিন্ন মার্কেট এবং ট্রেডিং স্টাইলের জন্য প্যারামিটারগুলি সামঞ্জস্যপূর্ণ।

কৌশলগত ঝুঁকি

  1. ঘন ঘন পজিশন খোলার ফলে বড় ধরনের স্লিপিং খরচ হতে পারে।
  2. ক্রমাগত K লাইন সংখ্যা বিচার বাজার শব্দ দ্বারা প্রভাবিত হয়, প্রায়শই সংকেত দেখা দিতে পারে।
  3. স্থির স্টপ লস এবং স্টপ থামার পয়েন্টগুলি বাজারের অস্থিরতার সাথে খাপ খাইয়ে নিতে পারে না।

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

  1. প্রবণতার তীব্রতা এবং দিকনির্দেশনা নির্ধারণে সহায়তা করার জন্য আরও প্রযুক্তিগত সূচক যেমন গড় লাইন, ওঠানামা, ইত্যাদি অন্তর্ভুক্ত করা হয়েছে।
  2. মোবাইল স্ট্রোকের ট্রিগার শর্তগুলি অনুকূলিত করুন, যেমন এটিআর অভিযোজন অনুসারে পুনরুদ্ধারের শতাংশ।
  3. ট্র্যাকিং স্টপ, সিঁড়িযুক্ত স্টপ ইত্যাদির মতো আরও গতিশীল স্টপ এবং স্টপ পদ্ধতি ব্যবহার করুন।
  4. বিভিন্ন বাজার এবং জাতের জন্য সর্বোত্তম প্যারামিটার সমন্বয় খুঁজে বের করার জন্য প্যারামিটারগুলিকে অপ্টিমাইজ করুন।

সারসংক্ষেপ

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

কৌশল সোর্স কোড
/*backtest
start: 2024-04-16 00:00:00
end: 2024-05-16 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("K Consecutive Candles 數來寶V2", max_bars_back=300, overlay=true)

// 定義用戶輸入
k = input.int(3, title="Number of Consecutive Candles for Long", minval=1)
k2 = input.int(3, title="Number of Consecutive Candles for Short", minval=1)
stopLossTicks = input.int(500, title="Stop Loss (Ticks)")
takeProfitTicks = input.int(500, title="Take Profit (Ticks)")
iTGT = input.int(200,"iTGT")  // 移動停利點
iPcnt = input.int(50,"iPcnt")  // 移動停利%

var float TrailValue = 0
var float TrailExit = 0
var float  vMP = 0

BarsSinceEntry = ta.barssince(strategy.position_size == 0)

vMP := strategy.position_size

// 创建一个包含键值对的字典
addArrayData(type, value) =>
    alert_array = array.new_string()
    array.push(alert_array, '"timenow": ' + str.tostring(timenow))
    array.push(alert_array, '"seqNum": ' + str.tostring(value))
    array.push(alert_array, '"type": "' + type + '"')
    alertstring = '{' + array.join(alert_array,', ') + '}'


// 定義條件變量
var int countLong = 0  // 記錄連續多頭條件成立的次數
var int countShort = 0 // 記錄連續空頭條件成立的次數

// 計算連續大於或小於前一根的收盤價格的次數
if close > close[1]
    countLong += 1
    countShort := 0 // 重置空頭計數
else if close < close[1]
    countShort += 1
    countLong := 0 // 重置多頭計數
else
    countLong := 0
    countShort := 0

// 開設多頭倉位條件
if countLong >= k
    strategy.entry("Long Entry", strategy.long)
    strategy.exit("Exit Long", "Long Entry", loss=stopLossTicks, profit=takeProfitTicks)
    

if vMP>0
    TrailValue := ta.highest(high,BarsSinceEntry)
    TrailExit := TrailValue - iPcnt*0.01*(TrailValue - strategy.position_avg_price)
    if TrailValue > strategy.position_avg_price + iTGT * syminfo.minmove/syminfo.pricescale and close < TrailExit
        
        strategy.close("Long Entry", comment = "Trl_LX"+ str.tostring(close[0]))
// 開設空頭倉位條件
if countShort >= k2
    strategy.entry("Short Entry", strategy.short)
    strategy.exit("Exit Short", "Short Entry", loss=stopLossTicks, profit=takeProfitTicks)

if vMP<0    
    TrailValue := ta.lowest(low,BarsSinceEntry)
    TrailExit := TrailValue - iPcnt*0.01*(TrailValue - strategy.position_avg_price)
    if TrailValue < strategy.position_avg_price - iTGT * syminfo.minmove/syminfo.pricescale and close > TrailExit
        
        strategy.close("short60", comment = "Trl_SX"+ str.tostring(close[0]))