এই কৌশলটি বাজারের অস্বাভাবিকতার উপর ভিত্তি করে একটি ট্রেডিং সিস্টেম, প্রধানত বৃহস্পতিবার সন্ধ্যায় বন্ধ এবং শুক্রবার বন্ধের মধ্যে বাজারের আচরণের বৈশিষ্ট্যগুলি ব্যবহার করে। কৌশলটি স্থির প্রবেশ এবং প্রস্থান সময় ব্যবহার করে, ব্যাকটেস্টিংয়ের মাধ্যমে এই বাজারের প্যাটার্নটি বৈধ করে। এটি প্রতি বাণিজ্যে মূলধনের 10% ব্যবহার করে এবং বাস্তবসম্মত ব্যাকটেস্টিং ফলাফল নিশ্চিত করতে স্লিপ এবং কমিশন ফ্যাক্টরগুলি বিবেচনা করে।
কৌশলটির মূল যুক্তি বেশ কয়েকটি মূল উপাদানের উপর ভিত্তি করেঃ
এই কৌশলটি একটি ক্লাসিক ট্রেডিং সিস্টেম যা বাজারের অস্বাভাবিকতার উপর ভিত্তি করে, কঠোর সময় পরিচালনা এবং সংরক্ষণশীল অর্থ পরিচালনার মাধ্যমে সম্ভাব্য রিটার্নের সন্ধান করে। যদিও কৌশল যুক্তি সহজ, পরিবর্তিত বাজারের পরিবেশের ঝুঁকিগুলিতে মনোযোগ দিতে হবে। লাইভ ট্রেডিংয়ে আরও সংরক্ষণশীল অবস্থান আকার এবং বিস্তৃত ঝুঁকি ব্যবস্থাপনা প্রক্রিয়া ব্যবহার করার পরামর্শ দেওয়া হয়।
/*backtest start: 2024-11-11 00:00:00 end: 2024-12-10 08:00:00 period: 4h basePeriod: 4h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © piirsalu //@version=5 strategy("Gold Friday Anomaly Strategy", default_qty_type=strategy.percent_of_equity, slippage = 1, commission_value=0.0005, process_orders_on_close = true, initial_capital = 50000, default_qty_value=500, overlay = true) ///////////////////////////////////////////////////////////////////////////////////// // . USER INPUTS . // ///////////////////////////////////////////////////////////////////////////////////// // Define backtest start and end dates st_yr_inp = input(defval=2000, title='Backtest Start Year') st_mn_inp = input(defval=01, title='Backtest Start Month') st_dy_inp = input(defval=01, title='Backtest Start Day') en_yr_inp = input(defval=2025, title='Backtest End Year') en_mn_inp = input(defval=01, title='Backtest End Month') en_dy_inp = input(defval=01, title='Backtest End Day') // Set start and end timestamps for backtesting start = timestamp(st_yr_inp, st_mn_inp, st_dy_inp, 00, 00) end = timestamp(en_yr_inp, en_mn_inp, en_dy_inp, 00, 00) ///////////////////////////////////////////////////////////////////////////////////// // . STRATEGY LOGIC . // ///////////////////////////////////////////////////////////////////////////////////// // Check if the current day is Friday isFriday = (dayofweek == dayofweek.friday) // Initialize a candle counter var int barCounter = 0 // Increment the candle counter on each new bar barCounter := barCounter + 1 // Define trading session time ranges pre_mkt = time(timeframe.period, '0400-0800:23456') mkt_hrs = time(timeframe.period, '0800-1600:23456') eod = time(timeframe.period, '1200-1600:23456') ///////////////////////////////////////////////////////////////////////////////////// // . STRATEGY ENTRY & EXIT . // ///////////////////////////////////////////////////////////////////////////////////// // Enter a long position on the first candle of Friday within the backtest period if dayofweek == 4 and time >= start and time <= end strategy.entry("BuyOnFriday", strategy.long) // Close the position after holding it for 4 candles if (barCounter % 1 == 0) strategy.close("BuyOnFriday")