نحوه دستکاری کلمات هشدار استراتژی / شاخص TradingView – سایر – 8 ژانویه 2023
این مقاله تکمیلی وبلاگ است که نحوه دستکاری کلمات هشدار را در سناریوها یا شرایط مختلف برای شاخص ها و استراتژی های TradingView شرح می دهد. در محصول من “هشدارهای TradingView به دستگاه کپی معامله گر MT4/MT5″، برخی از کلمات کلیدی هشدار به عنوان پیش فرض در متغیرهای EA دستگاه کپی تنظیم شده اند: کلمات
این مقاله تکمیلی وبلاگ است که نحوه دستکاری کلمات هشدار را در سناریوها یا شرایط مختلف برای شاخص ها و استراتژی های TradingView شرح می دهد.
در محصول من “هشدارهای TradingView به دستگاه کپی معامله گر MT4/MT5″، برخی از کلمات کلیدی هشدار به عنوان پیش فرض در متغیرهای EA دستگاه کپی تنظیم شده اند:
کلمات کلیدی برای تجارت طولانی: خرید، بلند، بالا، صعودی، گاو نر
کلمات کلیدی برای تجارت کوتاه: فروش، کوتاه، پایین، نزولی، خرس
کلمات کلیدی تا پایانتجارت طولانی: خرید نزدیک، نزدیک خرید، خرید نزدیک، خرید نزدیک، بسته طولانی، طولانی مدت بسته، خرید خروج، خرید خروج، خروج طولانی، خروج طولانی
کلمات کلیدی برای بستن تجارت کوتاه: فروش نزدیک، فروش نزدیک، فروش نزدیک، فروش بسته، بسته شدن کوتاه، بسته کوتاه، فروش خروجی، فروش خروجی، خروج کوتاه، خروج کوتاه مدت
اگر میخواهید همه معاملات را ببندید، فهرست کلمات کلیدی را روی «کلمات کلیدی برای بستن معاملات LONG و SHORT» تنظیم کنید.
میتوانید از هر یک از کلیدواژههای موجود در بالا در پیامهای هشدار استراتژی/شاخص TradingView استفاده کنید.
یا می توانید کلمات کلیدی دلخواه خود را با اضافه کردن کاما به اضافه کلمه کلیدی جدید خود به لیست بالا اضافه کنید.
پیشنهادات زیر ابتدا از طریق هشدارهای شاخص TradingView و سپس استراتژی بررسی می شوند.
هشدارهای نشانگر
دو روش برای نوشتن کدهای هشدار pinescript وجود دارد:
“هشدار”
و
“شرایط هشدار”
اگر از تابع “هشدار” استفاده می کنید، یک نمونه کد کد را به صورت زیر به اشتراک می گذارم. اگر نوار شمع صعودی بسته شود یا اگر نزولی باشد، به سادگی یک هشدار BUY افزایش میدهد. شما می توانید این نشانگر هشدار نمونه را در نمودار یک دقیقه ای برای ماشه سریع قرار دهید.
indicator(title = "Indicator alert test", overlay = true) sigBuy = close >= open sigSell = close < open if sigBuy alert("Bullish candle, BUY", alert.freq_once_per_bar_close) if sigSell alert("Bearish candle, SELL", alert.freq_once_per_bar_close) plot(close, color = na)
این مثال پس از بسته شدن یک نوار، یک هشدار ایجاد می کند. اگر می خواهید این هشدار در حالت بیدرنگ مطرح شود، فقط کافی است بنویسید هشدار(“شمع صعودی، خرید”) فرکانس پیشفرض «هشدار» Pinescript این است که یک بار در نوار راهاندازی شود.
اگر ترجیح میدهید از «شرایط هشدار» استفاده کنید، مانند کدهای زیر به نظر میرسد – و میتوانید انتخاب کنید که در هنگام تنظیم چه شرایطی هشدار داده شود:
indicator(title = "Indicator alertcondition test", overlay = true) conBuy = close >= open conSell = close < open alertcondition(conBuy, title = "Buy Signal", message = "Bullish candle, BUY") alertcondition(conSell, title = "Sell Signal", message = "Bearish candle, SELL") plot(close, color = na)
اما لطفاً توجه داشته باشید که فرکانس هشدار پیشفرض “شرایط هشدار” فقط یک بار افزایش مییابد. اگر میخواهید هشدارهای مداوم داشته باشید، ضروری است که این تنظیم را به “یک بار در هر بار” یا “یک بار در هر نوار بسته” تغییر دهید.
هشدارهای استراتژی
در زیر قطعه کد pinescript من است که نحوه افزودن اقدامات ورود/خروج تجارت را با استفاده از «نظر» نشان میدهد.
strategy(title = "Strategy Alert Test - Market Order", overlay = true) lot = input.int(title = "Trade lot", defval = 100, minval = 1) startDate = input.time(title = "Start date", defval = timestamp('2022-01-01')) bool inDateRange = time >= startDate rrr = 2.0 atrMulti = 3.0 atrVal = ta.atr(50) maShort = ta.sma(close, 50) maLong = ta.sma(close, 100) sigBuy = ta.crossover(maShort, maLong) sigSell = ta.crossunder(maShort, maLong) plot(maShort, color = color.blue) plot(maLong, color = color.red) if sigBuy and inDateRange and strategy.opentrades.size(strategy.opentrades - 1) <= 0 strategy.entry(id = "buy", direction = strategy.long, qty = lot, comment = "buy") slPrice = math.round_to_mintick(close + syminfo.mintick * 1 - atrVal * atrMulti) tpPrice = math.round_to_mintick(close + syminfo.mintick * 1 + atrVal * atrMulti * rrr) strategy.exit(id = "buy exit", from_entry = "buy", stop = slPrice, limit = tpPrice, comment = "close buy") if sigSell and inDateRange and strategy.opentrades.size(strategy.opentrades - 1) >= 0 strategy.entry(id = "sell", direction = strategy.short, qty = lot, comment = "sell") slPrice = math.round_to_mintick(close + atrVal * atrMulti) tpPrice = math.round_to_mintick(close - atrVal * atrMulti * rrr) strategy.exit(id = "sell exit", from_entry = "sell", stop = slPrice, limit = tpPrice, comment = "close sell")
کلمات نظرات سفارش در واقع متون دقیق نشان داده شده در نمودار TradingView برای هر اقدام تجاری هستند. یا میتوانید از ویژگی «alert_message» در strateg.entry یا strateg.exit نیز استفاده کنید.
این استراتژی نمونه تقاطع بالا یا پایین دو خط میانگین متحرک ساده را به عنوان سیگنال خرید و فروش می گیرد. قیمت استاپلاس 3 برابر مقادیر atr (دوره atr = 50) است. قیمت سود بر اساس «نسبت پاداش ریسک» = 2.0 است.
سپس باید وارد کنید
{{strategy.order.comment}}
در تنظیمات زیر هشدار – که هشدارها به طور کامل از عبارات نظر پیروی می کنند.
اگر از ویژگی «alert_message» به غیر از «نظر» استفاده میکنید، در اینجا باید {{strategy.order.alert_message}} در این تنظیم باشد.
اگر استراتژی شما است سفارش معلق را محدود یا متوقف کنید، مرجع Pinescript استفاده از ویژگی “alert_message” را برای Strategy.entry توصیه می کند. لطفا این مقاله را بخوانید:
استفاده از کلمه “نظر” هنوز برای این سناریوی انجام سفارش مشکلی ندارد. به هر حال من کدهای نمونه زیر را برای سناریوی توقف سفارش میسازم و کلمات پیام را در قسمت “alert_message” قرار میدهم.
قیمت توقف 1.0 برابر ارزش atr است – و قوانین توقف ضرر و سود از مثال قبلی پیروی می کنند.
strategy(title = "Strategy Alert Test - Stop Order", overlay = true) lot = input.int(title = "Trade lot", defval = 100, minval = 1) startDate = input.time(title = "Start date", defval = timestamp('2022-01-01')) bool inDateRange = time >= startDate rrr = 2.0 atrMultiOpen = 1.0 atrMultiSp = 3.0 atrVal = ta.atr(50) maShort = ta.sma(close, 50) maLong = ta.sma(close, 100) sigBuy = ta.crossover(maShort, maLong) sigSell = ta.crossunder(maShort, maLong) plot(maShort, color = color.blue) plot(maLong, color = color.red) if sigBuy and inDateRange openPr = math.round_to_mintick(close + syminfo.mintick + atrVal * atrMultiOpen) slPrice = math.round_to_mintick(openPr - atrVal * atrMultiSp) tpPrice = math.round_to_mintick(openPr + atrVal * atrMultiSp * rrr) strategy.entry("buy", direction = strategy.long, stop = openPr, alert_message = "Buy") strategy.exit(id = "buy exit", from_entry = "buy", stop = slPrice, limit = tpPrice, alert_message = "close buy") if sigSell and inDateRange openPr = math.round_to_mintick(close - syminfo.mintick + atrVal * atrMultiOpen) slPrice = math.round_to_mintick(openPr + atrVal * atrMultiSp) tpPrice = math.round_to_mintick(openPr - atrVal * atrMultiSp * rrr) strategy.entry("sell", direction = strategy.short, stop = openPr, alert_message = "Sell") strategy.exit(id = "sell exit", from_entry = "sell", stop = slPrice, limit = tpPrice, alert_message = "close sell")
از آنجایی که ویژگی “alert_message” اکنون در کدها استفاده می شود، تنظیم هشدار باید {{strategy.order.alert_message}} را داشته باشد تا کلمات دقیق به عنوان متن هشدار نشان داده شوند.
بسته شدن جزئی
اگر میخواهید اقدامات بسته جزئی داشته باشید، فقط xx% را در متن هشدار خروج استراتژی اضافه کنید، به عنوان مثال “بستن طولانی 50٪”.
در زیر نمونه کدهای پین اسکریپت است که می توانید به عنوان مرجع استفاده کنید. در دستگاه کپی MT4/MT5 ea، نیازی به انجام تنظیمات ندارید.
strategy(title = "Strategy Partial Close", overlay = true, calc_on_order_fills = false, initial_capital = 100000, currency = "USD") lot = input.int(title = "Trade lot", defval = 100, minval = 1) isBuy = input.bool(title = "Buy?", defval = true) isSell = input.bool(title = "Sell?", defval = true) startDate = input.time(title = "Start date", defval = timestamp('2022-11-15')) bool inDateRange = time >= startDate buySig = close[1] < open[1] and close[0] > open[0] buyPCSig = close[1] > open[1] and close[0] > open[0] buyACSig = close[2] > open[2] and close[1] > open[1] and close[0] > open[0] sellSig = close[1] > open[1] and close[0] < open[0] sellPCSig = close[1] < open[1] and close[0] < open[0] sellACSig = close[2] < open[2] and close[1] < open[1] and close[0] < open[0] var bool _buyPartial = false var bool _sellPartial = false if isBuy and buySig and inDateRange and strategy.position_size <= 0 strategy.entry(id = "buy", direction = strategy.long, qty = lot, comment = "buy") _buyPartial := true if isBuy and buyPCSig and inDateRange and strategy.position_size > 0 and _buyPartial strategy.close(id = "buy", qty_percent = 50, comment = "close buy 50%") _buyPartial := false if isBuy and buyACSig and inDateRange and strategy.position_size > 0 strategy.close(id = "buy", comment = "close buy") if isSell and sellSig and inDateRange and strategy.position_size >= 0 strategy.entry(id = "sell", direction = strategy.short, qty = lot, comment = "sell") _sellPartial := true if isSell and sellPCSig and inDateRange and strategy.position_size < 0 and _sellPartial strategy.close(id = "sell", qty_percent = 50, comment = "close sell 50%") _sellPartial := false if isSell and sellACSig and inDateRange and strategy.position_size < 0 strategy.close(id = "sell", comment = "close sell")
آموزش مجازی مدیریت عالی حرفه ای کسب و کار Post DBA + مدرک معتبر قابل ترجمه رسمی با مهر دادگستری و وزارت امور خارجه | آموزش مجازی مدیریت عالی و حرفه ای کسب و کار DBA + مدرک معتبر قابل ترجمه رسمی با مهر دادگستری و وزارت امور خارجه | آموزش مجازی مدیریت کسب و کار MBA + مدرک معتبر قابل ترجمه رسمی با مهر دادگستری و وزارت امور خارجه |
مدیریت حرفه ای کافی شاپ | حقوقدان خبره | سرآشپز حرفه ای |
آموزش مجازی تعمیرات موبایل | آموزش مجازی ICDL مهارت های رایانه کار درجه یک و دو | آموزش مجازی کارشناس معاملات املاک_ مشاور املاک |
- نظرات ارسال شده توسط شما، پس از تایید توسط مدیران سایت منتشر خواهد شد.
- نظراتی که حاوی تهمت یا افترا باشد منتشر نخواهد شد.
- نظراتی که به غیر از زبان فارسی یا غیر مرتبط با خبر باشد منتشر نخواهد شد.
ارسال نظر شما
مجموع نظرات : 0 در انتظار بررسی : 0 انتشار یافته : ۰