দ্রুত এবং ধীর দ্বৈত চলমান গড় ট্রেডিং কৌশল


সৃষ্টির তারিখ: 2023-10-27 16:41:24 অবশেষে সংশোধন করুন: 2023-10-27 16:41:24
অনুলিপি: 0 ক্লিকের সংখ্যা: 691
1
ফোকাস
1617
অনুসারী

দ্রুত এবং ধীর দ্বৈত চলমান গড় ট্রেডিং কৌশল

ওভারভিউ

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

কৌশল নীতি

এই কৌশলটি প্রথমে দ্রুত চলমান গড়ের দৈর্ঘ্য maFastLength এবং ধীর চলমান গড়ের দৈর্ঘ্য maSlowLength সেট করে। তারপরে দ্রুত চলমান গড় fastMA এবং ধীর চলমান গড় slowMA গণনা করা হয়। দ্রুত চলমান গড় মূল্য পরিবর্তনের জন্য আরও সংবেদনশীল এবং বর্তমান প্রবণতা নির্ধারণ করতে ব্যবহার করা যেতে পারে; ধীর চলমান গড় মূল্য পরিবর্তনের জন্য আরও ধীর প্রতিক্রিয়াশীল এবং প্রবণতা নির্দেশ করতে ব্যবহার করা যেতে পারে।

যখন দ্রুত চলমান গড়ের উপর দিয়ে ধীর চলমান গড় অতিক্রম করে, তখন বহু কৌশল অবলম্বন করে goLong () সংকেত উৎপন্ন হয়। যখন দ্রুত চলমান গড়ের নিচে দিয়ে ধীর চলমান গড় অতিক্রম করে, তখন প্লেইন পজিশন করে বহু মাথা করে killLong () সংকেত উৎপন্ন হয়।

আপনি longonly, shorting, অথবা swapping করতে পারেন।

বহু কৌশল করার সময়, goLong ((() সংকেত প্রেরণ করার সময় বেশি পজিশন খুলুন; killLong ((() সংকেত প্রেরণ করার সময় পজিশন বন্ধ করুন।

খালি করার কৌশলটি হ’ল খালি করা যখন একটি killLong () সংকেত আসে; যখন একটি goLong () সংকেত আসে তখন পজিশনটি প্লেইন করুন।

দ্বি-মুখী লেনদেনের সময়, goLong () সংকেত প্রেরণের সময় অতিরিক্ত অবস্থান খুলুন; KillLong () সংকেত প্রেরণের সময় অতিরিক্ত অবস্থান এবং খালি অবস্থান খুলুন।

এছাড়া, স্টপ লস, স্টপ ট্র্যাকিং, ট্রেডিং বিজ্ঞপ্তি ইত্যাদির মতো বৈশিষ্ট্যগুলিও রয়েছে যা ব্যবহারের ক্ষেত্রে নমনীয়তা দেয়।

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

  1. এই কৌশলটি সহজ, সহজেই বোঝা যায় এবং সহজেই কার্যকর করা যায়।

  2. ট্রেডিংয়ের ক্ষেত্রে, আপনি আপনার পছন্দমতো ট্রেড করতে পারেন, অথবা আপনি আপনার পছন্দমতো ট্রেড করতে পারেন।

  3. স্টপ লস, স্টপ ট্র্যাকিং ইত্যাদির মতো ঝুঁকি ব্যবস্থাপনা ফাংশন ব্যবহার করার ক্ষেত্রে নমনীয়তা থাকতে পারে।

  4. ট্রেডিং বার্তা কাস্টমাইজ করা যায়, রিয়েল-টাইম ট্রেডিংয়ের পরামর্শ দেওয়া যায়।

  5. ধীরে ধীরে গড় লাইন কৌশল বাজারের প্রবণতা পরিবর্তনের প্রতি সংবেদনশীল এবং শক্তিশালী প্রবণতা ধরতে পারে।

  6. কৌশলগত প্যারামিটারগুলি সামঞ্জস্যযোগ্য, বিভিন্ন বাজারের জন্য প্যারামিটারগুলি সামঞ্জস্য করতে পারে, এবং এটি খুব অভিযোজিত।

কৌশলগত ঝুঁকি

  1. যখন বাজারে কোন সুস্পষ্ট প্রবণতা নেই, তখন বেশি সংখ্যক মিথ্যা সংকেত দেখা দিতে পারে, যা অত্যধিক লেনদেনের দিকে পরিচালিত করে।

  2. সমান্তরাল সিস্টেমগুলি উদ্দীপক ঘটনার প্রতি সংবেদনশীল নয় এবং উদ্দীপক সুযোগগুলি মিস করতে পারে।

  3. গড়-রেখা প্যারামিটারগুলি যুক্তিসঙ্গতভাবে নির্বাচন করা প্রয়োজন, প্যারামিটারগুলির ভুল নির্বাচন কৌশলটির কার্যকারিতা প্রভাবিত করতে পারে।

  4. এদিকে, ই-কমার্সের ক্ষেত্রে, এই ধরনের ব্যবসায়ের ক্ষেত্রে, এই ধরনের ব্যবসায়ের ক্ষেত্রে, এই ধরনের ব্যবসায়ের ক্ষেত্রে, এই ধরনের ব্যবসায়ের ক্ষেত্রে, এই ধরনের ব্যবসায়ের ক্ষেত্রে, এই ধরনের ব্যবসায়ের ক্ষেত্রে, এই ধরনের ব্যবসায়ের ক্ষেত্রে, এই ধরনের ব্যবসায়ের ক্ষেত্রে।

  5. লেনদেনের খরচ কৌশলগত লাভের উপর প্রভাব ফেলতে পারে।

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

  1. ট্রেডিং সিগন্যাল যাচাই করার জন্য আরএসআই এর মতো অন্যান্য সূচকগুলি প্রবর্তন করা যেতে পারে, যাতে ভুল সংকেত না হয়।

  2. প্যারামিটার অপ্টিমাইজেশান ফাংশনটি সেট করা যেতে পারে, যা স্বয়ংক্রিয়ভাবে সর্বোত্তম প্যারামিটার সমন্বয় খুঁজে বের করে।

  3. ডায়নামিক স্টপ-অফ সেট করা যায় লাভের জন্য লক করার জন্য এবং যখন প্রয়োজন হয় তখন স্টপ-অফ পয়েন্টটি সামঞ্জস্য করা যায়।

  4. মেশিন লার্নিং মডেলের সাহায্যে ট্রেন্ডের দিকনির্দেশনা নির্ধারণ করা যায়।

  5. আপনি আপনার ট্রেডিং অভ্যাস অনুসারে বার্তাপ্রেরণ ফাংশনটি অপ্টিমাইজ করতে পারেন।

সারসংক্ষেপ

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

কৌশল সোর্স কোড
/*backtest
start: 2022-10-20 00:00:00
end: 2023-10-26 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4

strategy("SMA Strategy", shorttitle="SMA Strategy", overlay=true, pyramiding=0, default_qty_type=strategy.percent_of_equity, default_qty_value=100)

// === Inputs ===
// short ma
maFastSource = input(defval=close, title="Fast MA Source")
maFastLength = input(defval=3, title="Fast MA Period", minval=1)

// long ma
maSlowSource = input(defval=close, title="Slow MA Source")
maSlowLength = input(defval=9, title="Slow MA Period", minval=1)

// Trade direction
shorting = input(defval=false, title="Short only?")
longonly = input(defval=true, title="Long only?")
swapping = input(defval=false, title="Swap orders?")
// risk management
useStop = input(defval=false, title="Use Initial Stop Loss?")
slPoints = input(defval=25, title="Initial Stop Loss Points", minval=1)
useTS = input(defval=false, title="Use Trailing Stop?")
tslPoints = input(defval=120, title="Trail Points", minval=1)
useTSO = input(defval=false, title="Use Offset For Trailing Stop?")
tslOffset = input(defval=20, title="Trail Offset Points", minval=1)

// Messages for buy and sell
message_long_entry  = input("Long entry message", title="Long entry message")
message_long_exit   = input("Long exit message", title="Long exit message")
message_short_entry = input("Short entry message", title="Short entry message")
message_short_exit  = input("Short exit message", title="Short exit message")

// Calculate start/end date and time condition
startDate  = input(timestamp("2021-01-01T00:00:00"), type = input.time)
finishDate = input(timestamp("2021-12-31T00:00:00"), type = input.time)
 
time_cond  = true
// === Vars and Series ===
fastMA = sma(maFastSource, maFastLength)
slowMA = sma(maSlowSource, maSlowLength)

plot(fastMA, color=color.blue)
plot(slowMA, color=color.purple)

goLong() =>
    crossover(fastMA, slowMA)
killLong() =>
    crossunder(fastMA, slowMA)
    
// Long only
if longonly
    strategy.entry("Buy", strategy.long, when=goLong() and time_cond, alert_message = message_long_entry)
    strategy.close("Buy", when=killLong() and time_cond, alert_message = message_long_exit)

// Short only
if shorting
    strategy.entry("Sell", strategy.short, when=killLong() and time_cond, alert_message = message_short_entry)
    strategy.close("Sell", when=goLong() and time_cond, alert_message = message_short_exit)
    
// Order Swapping
if swapping
    strategy.entry("Buy", strategy.long, when=goLong() and time_cond, alert_message = message_long_entry)
    strategy.entry("Sell", strategy.short, when=killLong() and time_cond, alert_message = message_short_entry)

if useStop
    strategy.exit("XLS", from_entry="Buy", stop=strategy.position_avg_price / 1.08, alert_message = message_long_exit)
    strategy.exit("XSS", from_entry="Sell", stop=strategy.position_avg_price * 1.08, alert_message = message_short_exit)