VWAP এবং ক্রস-সাইকেল সংকেতের উপর ভিত্তি করে দীর্ঘ-সংক্ষিপ্ত গতিশীল স্টপ-প্রফিট এবং স্টপ-লস কৌশল


সৃষ্টির তারিখ: 2024-03-08 17:37:21 অবশেষে সংশোধন করুন: 2024-03-08 17:37:21
অনুলিপি: 7 ক্লিকের সংখ্যা: 693
1
ফোকাস
1617
অনুসারী

VWAP এবং ক্রস-সাইকেল সংকেতের উপর ভিত্তি করে দীর্ঘ-সংক্ষিপ্ত গতিশীল স্টপ-প্রফিট এবং স্টপ-লস কৌশল

ওভারভিউ

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

কৌশল নীতি

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

VWAP ডেটা দ্বারা প্রবণতা নির্ধারণ করা, গতিশীল স্টপ লস এবং ফিক্সড পয়েন্ট স্টপস ব্যবহার করে, প্রবণতা কার্যকরভাবে নিয়ন্ত্রণ করতে, প্রত্যাহারের ঝুঁকি নিয়ন্ত্রণ করতে এবং সময়মত মুনাফা লক করতে পারে।

সামর্থ্য বিশ্লেষণ

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

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

  1. প্যারামিটার অপ্টিমাইজেশানঃ কৌশলটি স্টপস্টপ হিসাবে তিনটি স্থির পয়েন্ট ব্যবহার করে, প্রকৃত লেনদেনের জন্য বিভিন্ন মানদণ্ড এবং বাজারের বৈশিষ্ট্য অনুসারে সর্বোত্তম প্যারামিটার নির্বাচন করার জন্য অপ্টিমাইজেশন প্রয়োজন হতে পারে।
  2. অস্থিরতাঃ অস্থিরতার মধ্যে, ঘন ঘন প্রবেশ এবং প্রস্থানগুলি উচ্চতর লেনদেনের ব্যয় হতে পারে যা মুনাফা প্রভাবিত করে।
  3. প্রবণতা ধারাবাহিকতা: কৌশলটি প্রবণতার উপর নির্ভর করে, যদি বাজারটি ব্যাপ্তিগত অস্থিরতায় থাকে বা প্রবণতা ধারাবাহিকতা কম থাকে, তবে আরও বেশি ট্রেডিং সংকেত দেখা দিতে পারে, যা আরও বেশি ঝুঁকি নিয়ে আসে।

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

  1. প্রবণতা ফিল্টারঃ প্রবণতার দ্বিতীয় নিশ্চিতকরণের জন্য অন্যান্য প্রবণতা সূচক যেমন চলমান গড়, MACD ইত্যাদি যোগ করুন, সংকেতের নির্ভরযোগ্যতা বাড়ান।
  2. ডায়নামিক স্টপ পয়েন্টঃ বাজারের অস্থিরতা, এটিআর ইত্যাদির উপর ভিত্তি করে স্টপ পয়েন্টের সংখ্যাকে ডায়নামিকভাবে সামঞ্জস্য করুন যাতে এটি বাজারের সাথে আরও ভালভাবে খাপ খাইয়ে নিতে পারে।
  3. পজিশন ম্যানেজমেন্ট: অ্যাকাউন্টের তহবিল, ঝুঁকিপূর্ণ পছন্দ ইত্যাদির উপর ভিত্তি করে প্রতিটি লেনদেনের পজিশনের আকারের গতিশীল সমন্বয় করা।
  4. লেনদেনের সময় নির্বাচন করুনঃ সূচকের বৈশিষ্ট্য এবং লেনদেনের সক্রিয়তার উপর নির্ভর করে সর্বোত্তম লেনদেনের সময় নির্বাচন করুন, কৌশলটির কার্যকারিতা বাড়ান।

সারসংক্ষেপ

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

কৌশল সোর্স কোড
/*backtest
start: 2024-03-06 00:00:00
end: 2024-03-07 00:00:00
period: 45m
basePeriod: 5m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy('Pine Script Tutorial Example Strategy 1', overlay=true, initial_capital=1000, default_qty_value=100, default_qty_type=strategy.percent_of_equity)
// fastEMA = ta.ema(close, 24)
// slowEMA = ta.ema(close, 200)
// Higher Time Frame
float sl = na
float tgt = na
posSize = 1
vwap_1d = request.security(syminfo.tickerid, "1D", ta.vwap(close))
// plot(vwap_1d)

// To avoid differences on historical and realtime bars, you can use this technique, which only returns a value from the higher timeframe on the bar after it completes:
// indexHighTF = barstate.isrealtime ? 1 : 0
// indexCurrTF = barstate.isrealtime ? 0 : 1
// nonRepaintingVWAP = request.security(syminfo.tickerid, "1D", close[indexHighTF])[indexCurrTF]
// plot(nonRepaintingVWAP, "Non-repainting VWAP")

enterLong = ta.crossover(close, vwap_1d)
exitLong  = ta.crossunder(close, vwap_1d)

enterShort = ta.crossunder(close, vwap_1d)
exitShort  = ta.crossover(close, vwap_1d)

if enterLong
    sl := low[1]>vwap_1d ?low[1]:vwap_1d
    tgt:=close+3
    strategy.entry("EL", strategy.long, qty=posSize)
    strategy.exit('exitEL', 'EL', stop=sl, limit=tgt)
if enterShort
    sl := high[1]<vwap_1d ?high[1]:vwap_1d
    tgt := close-3
    strategy.entry("ES", strategy.short, qty=posSize)
    strategy.exit('exitES', 'ES', stop=sl, limit=tgt)

// if exitLong
//     strategy.close("EL")
// if exitShort
//     strategy.close("ES")





// goLongCondition1 = ta.crossover(close, vwap_1d)
// timePeriod = time >= timestamp(syminfo.timezone, 2021, 01, 01, 0, 0)
// notInTrade = strategy.position_size <= 0
// if goLongCondition1 and timePeriod and notInTrade
//     stopLoss = low[1]
//     takeProfit = close+3
//     strategy.entry('long', strategy.long)
//     strategy.exit('exit', 'long', stop=stopLoss, limit=takeProfit)
plot(close, color=color.new(#00c510, 0))
plot(vwap_1d, color=color.new(#f05619, 0))
plot(sl, color=color.new(#fbff00, 0))
plot(tgt, color=color.new(#00e1ff, 0))