ইচিমোকু কিনকো হিওর উপর ভিত্তি করে ট্রেন্ড রিভার্সাল ট্রেডিং কৌশল


সৃষ্টির তারিখ: 2023-09-20 15:44:13 অবশেষে সংশোধন করুন: 2023-09-20 15:44:13
অনুলিপি: 0 ক্লিকের সংখ্যা: 649
1
ফোকাস
1617
অনুসারী

ওভারভিউ

এই কৌশলটি প্রথম দিকে ভারসাম্য টেবিলের সূচক এবং MACD সূচককে একত্রিত করে এবং প্রবণতা বিপরীত হওয়ার পরে প্রবেশ করে। এটি প্রবণতা বিপরীত শ্রেণীর ট্রেডিং কৌশল।

কৌশল নীতি

  1. প্রথম দৃষ্টিতে সমান্তরাল সূচকের ঘূর্ণন রেখা গণনা করা হয়, যা প্রবণতার দিকনির্দেশের একটি সূচক হিসেবে ব্যবহৃত হয়। ঘূর্ণন রেখার উপরে দামগুলি মাল্টি-হেড বাজার এবং নীচে শূন্য-হেড বাজার।

  2. MACD সূচকটি যখন মাল্টি হেড মার্কেট একটি ডেড ফর্ক গঠন করে তখন বিক্রয় সংকেত উত্পন্ন করে; যখন খালি হেড মার্কেট একটি গোল্ড ফর্ক গঠন করে তখন ক্রয় সংকেত উত্পন্ন করে।

  3. ট্রেন্ড ইকুইলেন্স টেবিলের ট্রেন্ড জরিপ এবং MACD এর বিপরীত সিগন্যালের সাথে মিলিত হয়ে ট্রেন্ড বিপরীত পয়েন্টে বিপরীত লেনদেন করা হয়।

  4. ট্রেডিংয়ের সময় নিয়ন্ত্রণের ব্যবস্থা করা যায়, যেমন রাতের ট্রেডিং বন্ধ করা, সপ্তাহান্তে ট্রেড না করা ইত্যাদি, নির্দিষ্ট সময়ের ঝুঁকি এড়াতে।

  5. প্রযোজ্য স্টপ লস এবং স্টপ আউট কৌশলগুলি প্রয়োগ করুন যাতে লাভের উপর লক করা যায় এবং ঝুঁকি নিয়ন্ত্রণ করা যায়।

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

  1. এক নজরে সমতলতা সূচকটি প্রবণতা এবং সমর্থন চাপের স্তরকে নির্দেশ করে।

  2. MACD সূচক প্রবণতা বিপরীতকরণের জন্য সংবেদনশীল।

  3. প্রবণতা নির্ণয় এবং বিপরীত সিগন্যালের সংমিশ্রণে, ভুয়া সংকেতগুলি ফিল্টার করা যায়।

  4. গুরুত্বপূর্ণ সময়সীমার ঝুঁকি এড়াতে কাস্টমাইজড ট্রেডিং সময়সীমা

  5. স্টপ লস স্টপ কৌশলগুলি কার্যকরভাবে তহবিলের ঝুঁকি পরিচালনা করতে পারে।

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

  1. প্রথম দৃষ্টিতে সমীকরণ টেবিল এবং MACD সূচক ভুল বিচার সংকেত দেখা দিতে পারে।

  2. তিনি বলেন, ‘এটা এমন একটি ঘটনা যে, আমরা যদি কোন সিদ্ধান্ত না নিই, তাহলে আমরা আমাদের লক্ষ্যে পৌঁছাতে পারব না।

  3. ট্রেডিং টাইম কন্ট্রোল কিছু ট্রেডিং সুযোগ মিস করতে পারে।

  4. স্টপ ড্যামেজ সেট ভুলভাবে করা হয়েছে, যার ফলে অকালে স্টপ ড্যামেজ বা স্টপ ড্যামেজ হতে পারে।

  5. প্যারামিটার অপ্টিমাইজেশনের ক্ষেত্রে ওভার-অপ্টিমাইজেশনের ফলে খারাপ ফলাফল হতে পারে।

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

  1. সমান্তরাল টেবিল এবং MACD এর প্যারামিটার পরীক্ষা করুন এবং সর্বোত্তম প্যারামিটার সমন্বয় খুঁজে বের করুন।

  2. ট্রেডিং সিগন্যাল নিশ্চিত করার জন্য অন্যান্য সূচক যোগ করুন।

  3. ঝুঁকি ও লাভের মধ্যে ভারসাম্য বজায় রাখার জন্য স্টপ লস স্টপ কৌশলটি অপ্টিমাইজ করুন।

  4. ট্রেডিং সময় নিয়ন্ত্রণের প্রয়োজনীয়তার মূল্যায়ন, যথাযথ শিথিলকরণ।

  5. ট্রেন্ড ফিল্টার যুক্ত করুন, যাতে ট্রেডিং ক্ষতির বিপরীত না হয়।

  6. রিভার্সনের তীব্রতা এবং সম্ভাব্য রিভার্সনের উচ্চতা কীভাবে নির্ধারণ করা যায় তা নিয়ে গবেষণা করুন।

সারসংক্ষেপ

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

কৌশল সোর্স কোড
/*backtest
start: 2022-09-13 00:00:00
end: 2023-09-19 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/
// © Revazi

//@version=5
strategy("The Impeccable by zyberal", overlay = true)

// Inputs {
// Strategy variables
IchimokuTenkanPeriod = input(9)
IchimokuKijunPeriod = input(190)
IchimokuSenkouPeriod = input(52)
MACDMainFast = input(3)
MACDMainSlow = input(10)
MACDMainSmooth = input(9)
ExitAfterBars = input(2)
ProfitTarget = input(135)
StopLoss = input(70)

// Trading Options
DontTradeOnWeekends = input(true)
ExitAtEndOfDay = input(true)
DayExitTimeHour   = input(23)
DayExitTimeMinute = input(04)

ExitOnFriday = input(true)
FridayExitTimeHour   = input(20)
FridayExitTimeMinute = input(40)

// }



// TRADING OPTIONS LOGIC {
OpenOrdersAllowed = true

// Dont trade on weekends {
if DontTradeOnWeekends
    if dayofweek == dayofweek.saturday or
       dayofweek == dayofweek.sunday
        OpenOrdersAllowed := false
// }

// Exit on close (end of day) {
if ExitAtEndOfDay
    if timeframe.isintraday and
       time >= timestamp(year(timenow), month(timenow), dayofmonth(timenow), DayExitTimeHour, DayExitTimeMinute)
        OpenOrdersAllowed := false
// }

// Exit on Friday {
if ExitOnFriday
    if timeframe.isintraday and
       time >= timestamp(year(timenow), month(timenow), dayofmonth(timenow), FridayExitTimeHour, FridayExitTimeMinute)
        OpenOrdersAllowed := false
// }


// Rule: Trading signals {
openW3 = request.security(syminfo.tickerid, "W", open)[3]

middleDonchian(Length) => math.avg(ta.highest(Length), ta.lowest(Length))
Tenkan = middleDonchian(IchimokuTenkanPeriod)[2]

[macdLine, signalLine, _] = ta.macd(close, MACDMainFast, MACDMainSlow, MACDMainSmooth)

LongEntrySignal = openW3 > Tenkan and ta.crossunder(macdLine, signalLine)[3] //macdLine[3] < signalLine[3]
ShortEntrySignal = openW3 < Tenkan and ta.crossover(macdLine, signalLine)[3] //macdLine[3] > signalLine[3]
// }



// Calculate conditions {
IsFlat() => strategy.position_size == 0
IsLong() => strategy.position_size > 0
IsShort() => strategy.position_size < 0

longCondition  = OpenOrdersAllowed and not IsLong() and LongEntrySignal
shortCondition = OpenOrdersAllowed and not IsShort() and ShortEntrySignal

// }

// Open positions based on conditions {
strategy.order(id = "buy", direction = strategy.long, qty = 1, when = longCondition)
strategy.order(id = "sell", direction = strategy.short, qty = 1, when = shortCondition)
// }