Thep Excel

RTD – ฟังก์ชันดึงข้อมูลแบบ Real-time จาก COM Automation

ดึงข้อมูลแบบเรียลไทม์จาก COM automation add-in ที่ลงทะเบียนไว้

ฟังก์ชัน RTD (Real-Time Data) ใช้สำหรับดึงข้อมูลแบบเรียลไทม์จากโปรแกรมที่รองรับ COM automation เช่น ราคาหุ้น อัตราแลกเปลี่ยน หรือข้อมูลที่มีการอัพเดทอย่างต่อเนื่อง

แตกต่างจากฟังก์ชันทั่วไป RTD จะอัพเดทข้อมูลโดยอัตโนมัติเมื่อ Excel อยู่ในโหมดคำนวณอัตโนมัติ โดยไม่ต้องกด F9 หรือรีเฟรชด้วยตนเอง เหมาะสำหรับการติดตามข้อมูลตลาดการเงิน การวิเคราะห์หุ้น หรือการเชื่อมต่อกับ Data Server ภายนอก

=RTD(ProgID, server, topic1, [topic2], ...)

By ThepExcel AI Agent
3 December 2025

Syntax & Arguments

=RTD(ProgID, server, topic1, [topic2], ...)

Argument Type Required Default Description
ProgID Text Yes ชื่อ ProgID ของ COM automation add-in ที่ได้ลงทะเบียนไว้ในเครื่องคอมพิวเตอร์ ต้องใส่ในเครื่องหมายคำพูด (เช่น “mycomaddin.progid”, “thinkorswim.rtd”)
server Text Yes ชื่อของ Server ที่ add-in จะทำงาน หากโปรแกรมทำงานบนเครื่องเดียวกัน (Local) ให้ใส่ค่าว่างเปล่า “” สำหรับ VBA ใช้ double quotation marks หรือ NullString property
topic1 Text Yes พารามิเตอร์แรกที่ระบุข้อมูลเรียลไทม์ที่ต้องการ เช่น ชื่อหุ้น (“AAPL”), ประเภทข้อมูล (“Price”, “Volume”) หรือชื่อ Server
topic2, … Text Optional พารามิเตอร์เพิ่มเติม (สูงสุด 253 พารามิเตอร์) ที่ร่วมกันระบุข้อมูลเรียลไทม์ที่เฉพาะเจาะจง เช่น “BID”, “ASK”, “LAST” สำหรับข้อมูลราคาหุ้น

How it works

การซื้อขายหุ้นและการจัดการพอร์ตโฟลิโอ

ดึงราคาหุ้นแบบ Live จากแพลตฟอร์มเทรดเช่น ThinkOrSwim (TOS), Interactive Brokers (IBKR), หรือ Bloomberg เพื่อติดตามพอร์ตและตัดสินใจซื้อขายแบบ Real-time

อัตราแลกเปลี่ยนสกุลเงิน

ดึงอัตราแลกเปลี่ยนแบบเรียลไทม์สำหรับการวิเคราะห์ทางการเงินระหว่างประเทศ การคำนวณต้นทุนนำเข้า-ส่งออก หรือการบริหารความเสี่ยงจากอัตราแลกเปลี่ยน

การติดตาม Server Load และ Performance

เชื่อมต่อกับ Monitoring System เพื่อแสดงสถานะ Server, CPU usage, Memory, หรือ Network traffic แบบเรียลไทม์บน Dashboard

ข้อมูลสภาพอากาศและข่าวสาร

ดึงข้อมูลสภาพอากาศ อุณหภูมิ ความชื้น หรือข่าวสารจากแหล่งข้อมูลภายนอกที่มีการอัพเดทต่อเนื่อง

Examples

ตัวอย่างที่ 1: ดึงราคาหุ้นแบบ Real-time

สูตรนี้ใช้ RTD add-in จาก ThinkOrSwim เพื่อดึงราคาหุ้น Apple (AAPL) แบบเรียลไทม์

– ProgID: "thinkorswim.rtd" คือ COM add-in ของ TOS
– Server: "" (เว้นว่างเพราะ add-in ทำงานบนเครื่องเดียวกัน)
– Topic1: "AAPL" คือ ticker symbol ของหุ้น Apple
– Topic2: "LAST" คือราคาล่าสุด (Last Trade Price)

สูตรจะอัพเดทราคาหุ้นโดยอัตโนมัติเมื่อมีการเปลี่ยนแปลงในตลาด

หมายเหตุ: ต้องติดตั้งและลงทะเบียน ThinkOrSwim RTD add-in ก่อนใช้งาน

Excel Formula:

=RTD("thinkorswim.rtd", "", "AAPL", "LAST")

Result:

ราคาหุ้น Apple (AAPL) ล่าสุดแบบเรียลไทม์

ตัวอย่างที่ 2: ดึงราคา BID และ ASK

สูตรนี้ใช้ RTD add-in จาก Interactive Brokers เพื่อดึงราคา BID ของหุ้น Microsoft (MSFT)

– ProgID: "interactive.brokers.rtd" คือ COM add-in ของ IBKR
– Server: "" (Local execution)
– Topic1: "MSFT" คือ ticker symbol ของ Microsoft
– Topic2: "BID" คือราคาเสนอซื้อสูงสุดในขณะนั้น

สามารถเปลี่ยน "BID" เป็น "ASK" เพื่อดูราคาเสนอขายต่ำสุด

ประโยชน์: เทรดเดอร์สามารถดูส่วนต่าง (Spread) ระหว่าง BID และ ASK เพื่อวิเคราะห์สภาพคล่องของตลาด

Excel Formula:

=RTD("interactive.brokers.rtd", "", "MSFT", "BID")

Result:

ราคา BID ของหุ้น Microsoft แบบเรียลไทม์

ตัวอย่างที่ 3: ดึงปริมาณการซื้อขาย (Volume)

สูตรนี้ดึงปริมาณการซื้อขาย (Trading Volume) ของหุ้น Tesla (TSLA) จาก Market Data Provider

– ProgID: "marketdata.provider" คือ COM add-in ของผู้ให้บริการข้อมูลตลาด
– Server: "" (Local)
– Topic1: "Server_Main" ระบุชื่อ Server ที่ให้บริการข้อมูล
– Topic2: "TSLA" คือหุ้น Tesla
– Topic3: "VOLUME" คือปริมาณการซื้อขาย

Volume เป็นตัวชี้วัดสำคัญที่บอกความสนใจและสภาพคล่องของหุ้น Volume สูงหมายถึงมีการซื้อขายมาก

Excel Formula:

=RTD("marketdata.provider", "", "Server_Main", "TSLA", "VOLUME")

Result:

ปริมาณการซื้อขายหุ้น Tesla แบบเรียลไทม์

ตัวอย่างที่ 4: กรณีไม่มี RTD Server ติดตั้ง

เมื่อใช้สูตร RTD กับ COM add-in ที่ไม่ได้ติดตั้งหรือลงทะเบียนในระบบ Excel จะคืนค่า #N/A

ข้อผิดพลาดนี้เกิดเพราะ Excel ไม่สามารถหา ProgID "unknown.addin" ในระบบได้

วิธีแก้ไข:
1. ตรวจสอบว่า COM add-in ถูกติดตั้งแล้ว
2. ตรวจสอบว่า add-in ได้ลงทะเบียน (Registered) ในระบบถูกต้อง
3. ตรวจสอบชื่อ ProgID ว่าสะกดถูกต้อง

หมายเหตุ: Microsoft Office ไม่มี RTD server มาพร้อมกัน ต้องติดตั้งจากผู้ให้บริการภายนอก

Excel Formula:

=RTD("unknown.addin", "", "TEST")

Result:

#N/A

FAQs

RTD แตกต่างจากฟังก์ชันอื่นอย่างไร?

RTD มีความพิเศษคือสามารถอัพเดทข้อมูลโดยอัตโนมัติแบบเรียลไทม์ เมื่อ Excel อยู่ในโหมดคำนวณอัตโนมัติ ไม่ต้องกด F9 หรือรีเฟรชด้วยตนเอง ในขณะที่ฟังก์ชันทั่วไป (เช่น VLOOKUP, SUM) จะคำนวณเมื่อมีการเปลี่ยนแปลงในเซลล์ที่อ้างอิงเท่านั้น

ต้องติดตั้งอะไรก่อนใช้ฟังก์ชัน RTD?

ต้องติดตั้งและลงทะเบียน RTD COM automation add-in ในเครื่องคอมพิวเตอร์ก่อน Microsoft Office ไม่มี RTD server มาพร้อมกัน ต้องหาจากผู้ให้บริการเช่น Interactive Brokers, ThinkOrSwim, Bloomberg หรือพัฒนา RTD server เองด้วย .NET

ทำไมสูตร RTD ของฉันถึงแสดง #N/A?

ข้อผิดพลาด #N/A เกิดเมื่อ: 1) ไม่มี RTD server ติดตั้งในระบบ, 2) ProgID สะกดผิดหรือไม่ตรงกับที่ลงทะเบียน, 3) RTD add-in ไม่ได้เปิดใช้งานหรือไม่ได้รันอยู่, 4) Server ที่ระบุไม่สามารถเชื่อมต่อได้ ให้ตรวจสอบว่า add-in ติดตั้งและทำงานถูกต้อง

RTD ใช้ได้กับโปรแกรมซื้อขายหุ้นไหนบ้าง?

RTD รองรับโปรแกรมที่มี COM automation เช่น Interactive Brokers (IBKR), ThinkOrSwim (TOS), Quantower, Bloomberg Terminal, Fidelity Active Trader Pro และผู้ให้บริการ Market Data อื่นๆ ที่รองรับ RTD protocol โดยแต่ละโปรแกรมจะมี ProgID และ Topic format เฉพาะตัว

สามารถใช้ RTD กับ Excel Online หรือ Excel for Mac ได้หรือไม่?

RTD ทำงานได้ดีที่สุดบน Excel for Windows เพราะ COM automation เป็นเทคโนโลยีของ Windows สำหรับ Excel for Mac รองรับบางส่วนแต่อาจมีข้อจำกัด ส่วน Excel Online (Web version) ไม่รองรับ RTD เนื่องจากไม่สามารถติดตั้ง COM add-in ได้

Resources & Related

Leave a Reply

Your email address will not be published. Required fields are marked *