آموزش ارسال آلارم TradingView به Telegram بهصورت مستقیم
اگر از تریدینگویو برای تحلیل بازار و ایجاد هشدارهای معاملاتی استفاده میکنید، میتوانید آلارمهای ایجادشده را بهصورت خودکار در یک گروه یا کانال تلگرام ارسال کنید.
این قابلیت برای افرادی کاربردی است که میخواهند هشدارهای یک اندیکاتور، استراتژی یا شرایط قیمتی را بدون بررسی مداوم تریدینگویو دریافت کنند. در این روش، هنگام فعالشدن آلرت، پیام موردنظر از طریق وبهوک به یک ربات تلگرامی ارسال میشود و ربات نیز آن پیام را در گروه یا کانال مشخصشده منتشر میکند.
ساختار کلی این ارتباط به شکل زیر است:
TradingView → Webhook → Telegram Bot → Telegram Channel / Group
در ادامه، تمام مراحل راهاندازی این سیستم را قدمبهقدم بررسی میکنیم.
پیشنیازهای ارسال آلارم از TradingView به Telegram
برای راهاندازی این سیستم به چند مورد نیاز دارید:
- حساب TradingView با امکان استفاده از Webhook URL
- یک حساب Telegram
- یک Telegram Bot
- یک کانال یا گروه برای دریافت پیامها
آیا حساب پولی TradingView لازم است؟
در حال حاضر، متاسفانه امکان استفاده از قابلیت Webhook URL در بخش تنظیمات آلارم را برای حسابهای رایگان تریدینگویو وجود ندارد.
مرحله اول: ساخت Telegram Bot
برای اینکه TradingView بتواند پیام خود را به Telegram ارسال کند، به یک بات تلگرامی نیاز داریم.
ربات تلگرام را میتوان بهسادگی با استفاده از ربات رسمی BotFather ساخت.
در Telegram عبارت زیر را جستوجو کنید:
@BotFather
وارد ربات رسمی شوید.
پس از انتخاب Start، گزینه New Bot را انتخاب کنید.
انتخاب نام ربات
BotFather ابتدا از شما یک نام برای ربات میخواهد. این نام میتواند دلخواه باشد.
برای مثال: TradingView Telegram
این نام صرفاً نام نمایشی ربات است و الزام خاصی ندارد.
انتخاب Username ربات
در مرحله بعد باید یک Username برای Bot انتخاب کنید.
Username باید منحصربهفرد باشد و به bot ختم شود.
برای مثال: tv_to_telegram_bot
اگر Username انتخابی قبلاً توسط شخص دیگری استفاده نشده باشد، BotFather ربات را ایجاد میکند.
مرحله دوم: دریافت Bot Token
پس از ساخت ربات، BotFather اطلاعاتی درباره بات در اختیار شما قرار میدهد که یکی از مهمترین آنها توکن است.
Token یک شناسه اختصاصی است که برای ارتباط با Telegram Bot API استفاده میشود.
در این آموزش، از همین توکن برای ساخت Webhook URL در تریدینگویو استفاده خواهیم کرد.
بنابراین توکن را کپی کرده و در محلی امن نگهداری کنید.
نکته امنیتی: Bot Token را مانند رمز عبور در نظر بگیرید و آن را در اختیار دیگران قرار ندهید. هر شخصی که به Token دسترسی داشته باشد، میتواند از طریق API با ربات شما ارتباط برقرار کند.
مرحله سوم: اضافه کردن بات به کانال یا گروه تلگرام
حالا باید مشخص کنیم پیامهای دریافتشده در کجا منتشر شوند.
این مقصد میتواند یک کانال یا یک گروه تلگرامی باشد.
برای اینکه Bot بتواند در مقصد موردنظر پیام ارسال کند، باید آن را به کانال یا گروه اضافه کرده و دسترسی ارسال پیام را برای آن فعال کنید.
از بخش مدیریت کانال وارد قسمت Administrators شوید و بات ساختهشده را بهعنوان ادمین اضافه کنید.
در هنگام تعیین دسترسیها، مطمئن شوید که Bot اجازه ارسال پیام داشته باشد.
بدون این دسترسی، حتی اگر تمام تنظیمات تریدینگویو و وبهوک درست باشند، بات نمیتواند پیام را در کانال منتشر کند.
مرحله چهارم: ساخت پیام با فرمت JSON
حالا باید مشخص کنیم وقتی بات پیامی از تریدینگویو دریافت کرد، چه کاری انجام دهد.
برای این کار از فرمت JSON استفاده میکنیم.
JSON یک قالب متداول برای انتقال اطلاعات بین نرمافزارها و سرویسهای مختلف است.
ساختار کلی یک داده JSON به شکل زیر است:
{ "key": "value"}
در این ساختار، هر ویژگی دارای دو بخش است:
- Key: نام ویژگی
- Value: مقدار آن ویژگی
برای مثال، اگر بخواهیم مشخصات یک شخص را تعریف کنیم، میتوانیم ویژگیهایی مانند نام، سن و… داشته باشیم.
در ارتباط تریدینگویو و تلگرام نیز از همین ساختار استفاده میکنیم.
برای ارسال پیام Telegram، در این آموزش دو ویژگی اصلی موردنیاز است:
chat_id
text
chat_id مشخص میکند پیام باید به کجا ارسال شود و text محتوای پیام را مشخص میکند.
برای مثال:
{ "chat_id": "CHAT_ID",
"text": "hello" }
در این مثال، عبارت hello پیامی است که Bot باید ارسال کند.
مرحله پنجم: پیدا کردن Chat ID
اکنون باید شناسه مقصد پیام را پیدا کنیم.
اگر مقصد شما یک کانال یا گروه خصوصی باشد، باید Chat ID آن را پیدا کنید.
پیشنهاد میشود برای پیدا کردن شناسه کانال یا گروه خصوصی از Telegram Web استفاده میشود. البته امکان استفاده از رباتهای تلگرامی برای این کار نیز وجود دارد.
پس از ورود به تلگراموب، روی کانال یا گروه موردنظر کلیک کنید و آدرس نمایشدادهشده در مرورگر را بررسی کنید.
در این آدرس یک شناسه عددی وجود دارد.
نکته مهم درباره نسخه Telegram Web
اگر شناسه موردنظر در URL نمایش داده نمیشود، در تنظیمات از گزینه Switch to a version نسخه A را انتخاب کنید.
پس از انتخاب نسخه مناسب، با کلیک روی کانال یا گروه، یک عدد اختصاصی در URL مشاهده میکنید.
این عدد را باید بهطور کامل کپی کنید.
علامت منفی ابتدای عدد نیز بخشی از Chat ID است و نباید حذف شود.
برای مثال: -1001234567890
باید دقیقاً با همین ساختار استفاده شود.
مرحله ششم: آمادهکردن پیام Alert در TradingView
اکنون اطلاعات لازم برای ساخت پیام را داریم.
یک پیام ساده میتواند به شکل زیر باشد:
{
"chat_id": "-1001234567890",
"text": "hello"
}
در اینجا:
chat_idشناسه کانال یا گروه مقصد است.textمتنی است که باید در Telegram منتشر شود.
میتوانید عبارت hello را با هر متن دلخواه دیگری جایگزین کنید.
مثلاً:
{"chat_id": "-1001234567890", "text": "TradingView Alert"}
این متن را باید در قسمت Message هنگام ایجاد Alert در TradingView قرار دهید.
مرحله هفتم: ساخت Webhook URL
حالا باید به TradingView بگوییم این پیام را به کجا ارسال کند.
برای این کار در تنظیمات Alert، گزینه Webhook URL را فعال کرده و آدرس API مربوط به Telegram Bot را وارد میکنیم.
ساختار این URL به شکل زیر است:
https://api.telegram.org/botBOT_TOKEN/sendMessage
در این آدرس، BOT_TOKEN را با Token واقعی که هنگام ساخت Bot از BotFather دریافت کردهاید جایگزین کنید.
بنابراین ساختار نهایی چیزی شبیه این خواهد بود:
https://api.telegram.org/bot123456789\:ABCDEF/sendMessage
البته Token واقعی هر ربات متفاوت است.
توجه به sendMessage
در انتهای URL از متد sendMessage استفاده میکنیم؛ زیرا هدف ما ارسال یک پیام متنی به Telegram است.
حرف M در Message باید با حروف بزرگ نوشته شود.
مرحله هشتم: ایجاد Alert در TradingView
اکنون تمام اجزای موردنیاز آماده هستند.
در تریدینگویو یک آلرت ایجاد کنید.
شرط ایجاد Alert میتواند هر چیزی باشد که تریدینگویو در اختیار شما قرار میدهد؛ برای مثال:
- رسیدن قیمت به یک سطح مشخص
- عبور قیمت از یک سطح
- ایجاد یک شرایط خاص در اندیکاتور
- ایجاد سیگنال در یک استراتژی
- یا آلرت تعریفشده در Pine Script
در بخش Message، JSON ساختهشده را قرار دهید:
{
"chat_id": "-1001234567890",
"text": "hello"
}
سپس در قسمت Notifications، گزینه Webhook URL را فعال کنید.
در فیلد مربوط به وبهوک، URL ساختهشده را قرار دهید:
https://api.telegram.org/botBOT_TOKEN/sendMessage
در نهایت آرت را ایجاد کنید.
مرحله نهم: تست ارسال پیام
برای اطمینان از درست بودن تنظیمات، بهتر است ابتدا یک پیام ساده مانند hello ارسال کنید.
هنگامی که شرط آلرت برقرار شود، تریدینگویو درخواست را به وبهوک ارسال میکند.
Telegram Bot این درخواست را دریافت کرده و پیام موجود در قسمت text را در کانال تلگرام با Chat ID تعیینشده منتشر میکند.
اگر همه مراحل درست انجام شده باشد، پیام را در کانال یا گروه تلگرام مشاهده خواهید کرد.
ارسال اطلاعات متغیر در پیام Telegram
یکی از قابلیتهای مهم این روش این است که پیام Telegram لزوماً نباید یک متن ثابت باشد.
تریدینگویو امکان استفاده از Placeholderها یا متغیرهای مربوط به آلرت را در متن پیام فراهم میکند.
برای مثال، میتوان قیمت را در لحظه فعالشدن آلرت بهصورت خودکار داخل پیام قرار داد.
در نتیجه تلگرام میتواند مثلاً پیامی شبیه این دریافت کند: قیمت = 123.45
این قابلیت برای ساخت پیامهای معاملاتی بسیار کاربردی است.
میتوان اطلاعات بیشتری نیز به پیام اضافه کرد.
برای مثال:
- نام نماد
- قیمت
- حجم
- زمان
- اطلاعات مربوط به شرایط ایجاد سیگنال
اگر آلرت از طریق Pine Script تولید شود، امکان شخصیسازی بسیار بیشتری برای محتوای پیام وجود دارد و میتوان اطلاعات موردنیاز را در ساختار پیام قرار داد.
استفاده از کانال عمومی Telegram
کانال مقصد میتواند Private یا Public باشد.
در کانال خصوصی، همانطور که توضیح داده شد، میتوان Chat ID عددی را از طریق Telegram Web پیدا کرد.
اما اگر کانال را عمومی کنید، برای آن یک Username تعیین میشود.
برای مثال: @kheirandish_v
در این حالت میتوان بهجای Chat ID عددی، Username کانال را در مقدار chat_id قرار داد:
{
"chat_id": "@kheirandish_v",
"text": "hello"
}
بنابراین در کانال عمومی، استفاده از Username میتواند کار را سادهتر کند.
نکته مهم این است که تغییر کانال خصوصی به عمومی باعث تغییر Bot یا Token نمیشود؛ در این حالت فقط روش مشخصکردن مقصد پیام تغییر میکند.
رفع خطاهای رایج
اگر پیام از TradingView به Telegram ارسال نمیشود، موارد زیر را بررسی کنید:
۱. گزینه Webhook در دسترس نیست
بررسی کنید حساب تریدینگویو شما امکان استفاده از Webhook را داشته باشد.
۲. Bot پیام ارسال نمیکند
مطمئن شوید Bot به کانال یا گروه اضافه شده و دسترسی ارسال پیام دارد.
۳. Chat ID اشتباه است
اگر از کانال یا گروه خصوصی استفاده میکنید، شناسه را از Telegram Web دریافت کنید و علامت منفی ابتدای آن را نیز حفظ کنید.
۴. Bot Token اشتباه است
Token دریافتشده از BotFather را دقیقاً و بدون فاصله در Webhook URL قرار دهید.
۵. Webhook URL اشتباه است
ساختار URL باید به شکل زیر باشد:
https://api.telegram.org/botBOT_TOKEN/sendMessage
دقت کنید که bot قبل از Token و sendMessage بعد از Token قرار گرفته باشد.
جمعبندی
برای ارسال مستقیم آلارمهای تریدینگویو به تلگرام نیازی به ارسال دستی پیام یا بررسی دائمی چارت ندارید. با ایجاد یک Telegram Bot و استفاده از قابلیت Webhook در تریدینگویو میتوان این فرآیند را بهصورت خودکار انجام داد.
مراحل اصلی عبارتاند از:
- آمادهکردن حساب TradingView با قابلیت Webhook
- ساخت Bot با
@BotFather - دریافت Bot Token
- اضافهکردن Bot به کانال یا گروه
- دادن دسترسی ارسال پیام به Bot
- پیدا کردن Chat ID
- ساخت پیام JSON شامل
chat_idوtext - ساخت Webhook URL با استفاده از Bot Token
- قرار دادن Message و Webhook در Alert TradingView
- تست ارسال پیام
- در صورت نیاز، استفاده از متغیرهای TradingView برای ارسال قیمت، نماد و سایر اطلاعات
با تکمیل این مراحل، میتوانید هشدارهای تریدینگویو را مستقیماً و بهصورت خودکار در تلگرام دریافت کنید. این روش همچنین پایه مناسبی برای ساخت سیستمهای پیشرفتهتر مانند ارسال سیگنالهای اندیکاتورها، هشدارهای چندنمادی، پیامهای سفارشی Pine Script و سیستمهای اطلاعرسانی معاملاتی است.
تیم ما آمادگی انجام پروژههای سفارشی برای رصد بازار در نمادها و تایمفریمهای دلخواه و ارسال آلارم در زمان برقرار شدن شرایط مد نظر شما را دارد.
با ما در ارتباط باشید.