ข้อดีของที่ปรึกษาอัจฉริยะสำเร็จรูป (Expert Advisors) เทียบกับการเขียนโปรแกรม (Programming) / ฟรีแลนซ์ (Freelance).
การใช้งานการแจ้งเตือนแบบพุช (Push notifications), อีเมล และการแจ้งเตือนใน MetaTrader

รายละเอียด
การสเกลปิ้ง (Scalping) เป็นหนึ่งในวิธีการเทรดที่ท้าทายที่สุด มีความเสี่ยงสูงและรวดเร็วในเวลาเดียวกันในการสร้างรายได้ อย่างไรก็ตาม ไม่ได้การันตีว่าคุณจะได้รับผลกำไรหลังจากการเทรด
กลยุทธ์ ที่อิงกับ อัตราข้อมูลติ๊ก (tick data rate) อาจเป็นหนึ่งในระบบที่มีกำไรมากที่สุดที่มีการพูดถึงกันอย่างกว้างขวาง อย่างไรก็ตาม มีรายละเอียดปลีกย่อยที่ควรพิจารณา
ราคาที่เสนอ (quote) ที่เข้ามาใน เทอร์มินัล (terminal) มีข้อมูลในปริมาณที่แตกต่างกัน
แม้ว่าคุณจะติดตั้ง เทอร์มินัล (terminal) ที่เหมือนกันสองตัวจากบริษัทเดียวกันและเปิดใช้งานพร้อมกัน (ซึ่งเป็นสิ่งที่ไม่เป็นจริง) ผลลัพธ์ที่ได้จะไม่แม่นยำ 100%
นอกจากนี้ การเริ่มต้น สเกลเปอร์ ของคุณพร้อมกันก็จะไม่ให้ผลลัพธ์ที่ซิงโครไนซ์อย่างสมบูรณ์
การเทรดบน เทอร์มินัล (terminal) สองตัวอาจแตกต่างกัน
ความแตกต่างนี้ขึ้นอยู่กับ กระแสการส่งข้อมูล (data transmission flow) จากเซิร์ฟเวอร์ไปยังเทอร์มินัลของคุณ
การสนทนาเกี่ยวกับระบบของฉัน TickSniper for MT4 และ TickSniper for MT5 เกิดขึ้นในฟอรั่มอื่นๆ พร้อมกับคำถามเดียว: ทำไมตำแหน่งเปิดและผลกำไรใน MT4 และ MT5 ถึงแตกต่างกัน?
คำตอบคือความแตกต่างของราคาที่เสนอ (quote) เทอร์มินัล MT4 มี การไหลของราคาที่เสนอ (quote flow) ที่ช้ากว่า อาจเนื่องมาจากการจราจรข้อมูลที่ติดขัด
ในเทอร์มินัล MetaTrader 5 สตรีมราคาที่เสนอ (quote stream) เร็วขึ้นถึงสิบเท่า ทำให้เกิดความแตกต่างอย่างมีนัยสำคัญระหว่างการเทรดที่เปิดอยู่
สำหรับบทความนี้ ได้พัฒนาผู้ช่วยผู้เชี่ยวชาญ (Expert Advisors) สองตัวขึ้นมาเป็นพิเศษ: TEST TICK for MT5 และ TEST TICK for MT4 โดยโค้ดของทั้งสองตัวเหมือนกันอย่างสมบูรณ์ (แน่นอนว่าภาษาโปรแกรมจะแตกต่างกัน ดังนั้นชื่อตัวฟังก์ชันจึงต่างกัน)
โค้ดสำหรับ MT4:
#property copyright "Copyright 2024, expforex" #property link "" int timestart = 0; int ticknumber = 0; // หมายเลขติ๊ก double PriceBID = 0; // ราคาซื้อ BID ของติ๊ก double PriceASK = 0; // ราคาขาย ASK ของติ๊ก int TimemsTick = 0; // เวลาของติ๊กในมิลลิวินาที int init() { timestart = Time[0]; // เริ่มนับจากบาร์ใหม่เพื่อให้ผู้ช่วยผู้เชี่ยวชาญทุกตัวในเทอร์มินัลเริ่มต้นพร้อมกัน return(0); } // ผู้ช่วยเริ่มทำงานเมื่อมีทุกติ๊ก int start() { if(timestart != Time[0]) { if(TimemsTick == 0) TimemsTick = GetTickCount(); ticknumber++; PriceBID = Bid; PriceASK = Ask; Comment("\n\n\n\n หมายเลขติ๊ก = " + ticknumber + "\nPriceBID = " + PriceBID + "\nPriceASK = " + PriceASK + "\nTimeTickinms = " + (GetTickCount() - TimemsTick)); Print("หมายเลขติ๊ก = " + ticknumber + " PriceBID = " + PriceBID + " PriceASK = " + PriceASK + " TimeTickinms = " + (GetTickCount() - TimemsTick)); } return(0); }
โค้ดสำหรับ MT5:
#property copyright "Copyright 2024, expforex." #property link "" #property version "1.00" int timestart = 0; int ticknumber = 0; // หมายเลขติ๊ก double PriceBID = 0; // ราคาซื้อ BID ของติ๊ก double PriceASK = 0; // ราคาขาย ASK ของติ๊ก int TimemsTick = 0; // เวลาของติ๊กในมิลลิวินาที int OnInit() { datetime Time[]; ArraySetAsSeries(Time, true); CopyTime(_Symbol, _Period, 0, 1, Time); timestart = (int)Time[0]; // เริ่มนับจากบาร์ใหม่เพื่อให้ผู้ช่วยผู้เชี่ยวชาญทุกตัวในเทอร์มินัลเริ่มต้นพร้อมกัน return(INIT_SUCCEEDED); } // ผู้ช่วยเริ่มทำงานเมื่อมีทุกติ๊ก void OnTick() { datetime Time[]; ArraySetAsSeries(Time, true); CopyTime(_Symbol, _Period, 0, 1, Time); if(timestart != (int)Time[0]) { if(TimemsTick == 0) TimemsTick = (int)GetTickCount(); ticknumber++; MqlTick last_tick; SymbolInfoTick(_Symbol, last_tick); double Bid = last_tick.bid; SymbolInfoTick(_Symbol, last_tick); double Ask = last_tick.ask; PriceBID = Bid; PriceASK = Ask; Comment("\n\n\n\n หมายเลขติ๊ก = " + ticknumber + "\nPriceBID = " + PriceBID + "\nPriceASK = " + PriceASK + "\nTimeTickinms = " + (GetTickCount() - TimemsTick)); Print("หมายเลขติ๊ก = " + ticknumber + " PriceBID = " + PriceBID + " PriceASK = " + PriceASK + " TimeTickinms = " + (GetTickCount() - TimemsTick)); } return; }
ผู้ช่วยเหล่านี้ทำสิ่งต่อไปนี้:
เมื่อเริ่มต้น ผู้ช่วยผู้เชี่ยวชาญ (Expert Advisor) บันทึกบาร์ที่เริ่มต้นขึ้นเพื่อให้แน่ใจว่าผู้ช่วยทุกตัวในเทอร์มินัลทั้งสี่เริ่มต้นพร้อมกันในบาร์ถัดไป (ในกรณีของเรา คือ M30)
จากนั้น ในทุก ๆ ติ๊ก ผู้ช่วยผู้เชี่ยวชาญจะบันทึกข้อมูลลงบนหน้าจอและในล็อก: หมายเลขติ๊ก, ราคาซื้อ/ขาย BID/ASK, และเวลาของติ๊กในมิลลิวินาทีนับตั้งแต่เริ่มการคำนวณ
ฉันได้ดาวน์โหลดเทอร์มินัล MT4 สองตัวและ MT5 สองตัวจากโบรกเกอร์เดียวกันเพื่อให้การทดสอบของเรามีความน่าเชื่อถือมากขึ้น
คุณได้ติดตั้ง MetaTrader แล้วหรือยัง?
การติดตั้งจาก www.expforex.com จำเป็นต้องใช้ MetaTrader
ฉันได้เปิดเทอร์มินัลและใช้งานกราฟ EURUSD M30 กับเทอร์มินัลทั้งสี่ตัว และใช้ ผู้ช่วยผู้เชี่ยวชาญ (Expert Advisor) หนึ่งตัวเพื่อตรวจสอบข้อสังเกตของเรา
ข้อมูลเริ่มต้นในล็อกของเราชี้ให้เห็นว่าเราเริ่มต้นพร้อมกัน:
mt4_1:
18:29:58 TEST TICK EURUSD, M30: Tick number = 1 PriceBID = 1.32281000 PriceASK = 1.32289000 TimeTickinms = 0
mt4_2:
18:29:58 TEST TICK EURUSD, M30: Tick number = 1 PriceBID = 1.32281000 PriceASK = 1.32289000 TimeTickinms = 0
mt5_1:
GR 0 18:29:58 TEST TICK (EURUSD, M30) Tick number = 1 PriceBID = 1.32336000 PriceASK = 1.32344000 TimeTickinms = 1065503
mt5_2:
GR 0 18:29:58 TEST TICK (EURUSD, M30) Tick number = 1 PriceBID = 1.32335000 PriceASK = 1.32345000 TimeTickinms = 1065674
จากภาพหน้าจอถัดไป ราคาที่เสนอเริ่มต้นเหมือนกัน แต่เราเห็นความคลาดเคลื่อน 1-2 ติ๊ก ซึ่งชี้ให้เห็นว่า:
สเกลเปอร์ ไม่สามารถให้ผลลัพธ์ที่เหมือนกัน 100% บนแพลตฟอร์ม MT4 และ MT5 ที่แตกต่างกันได้
นอกจากนี้ยังไม่สามารถเปิดการเทรดพร้อมกันในสองเทอร์มินัลของแพลตฟอร์ม MT4/MT5 เดียวกันได้
นี่ไม่เป็นความจริงและไม่ใช่ความผิดของโบรกเกอร์
โปรโตคอลการส่งข้อมูลผ่านเครือข่ายจากเซิร์ฟเวอร์ไปยังคอมพิวเตอร์ของคุณ อาจทำให้เกิดการสูญเสียแพ็กเก็ต ซึ่งเป็นเรื่องปกติ
ความแตกต่างในการคำนวณและการวิเคราะห์
ภาพหน้าจอถัดไปแสดงถึงความแตกต่างเหล่านี้:
นี่เป็นเพียง 3 นาทีหลังจากที่ผู้ช่วยเริ่มทำงาน
มาอ้างอิงล็อกของเราสำหรับหมายเลขติ๊ก 1433 บนเทอร์มินัล MT4:
18:47:44 TEST TICK EURUSD, M30: Tick number = 1433 PriceBID = 1.32336000 PriceASK = 1.32344000 TimeTickinms = 1065503
18:47:44 TEST TICK EURUSD, M30: Tick number = 1433 PriceBID = 1.32335000 PriceASK = 1.32345000 TimeTickinms = 1065674
เรามีเวลาเซิร์ฟเวอร์เดียวกัน แต่เวลาที่แสดงเป็นมิลลิวินาทีและราคาที่เสนอแตกต่างกัน
หมายเลขติ๊ก 1684
18:52:05 TEST TICK EURUSD, M30: Tick number = 1684 PriceBID = 1.32377000 PriceASK = 1.32385000 TimeTickinms = 1326586
18:52:03 TEST TICK EURUSD, M30: Tick number = 1684 PriceBID = 1.32374000 PriceASK = 1.32382000 TimeTickinms = 1324496
ไม่เพียงแต่เวลาจะแตกต่างกัน แต่ราคาซื้อ/ขาย (BID/ASK) ก็แตกต่างกันด้วย
ตอนนี้มาเปรียบเทียบกันบนเทอร์มินัล MT5:
ES 0 18:48:42 TEST TICK (EURUSD, M30) Tick number = 4316 PriceBID = 1.3231 PriceASK = 1.32318 TimeTickinms = 1124050
DS 0 18:48:43 TEST TICK (EURUSD, M30) Tick number = 4316 PriceBID = 1.32311 PriceASK = 1.3232 TimeTickinms = 1124502
หมายเลขติ๊กเหมือนกัน แต่ทำไมราคาถึงแตกต่างกัน?
หรืออีกตัวอย่างหนึ่ง:
RJ 0 18:52:21 TEST TICK (EURUSD, M30) Tick number = 4984 PriceBID = 1.32363 PriceASK = 1.32371 TimeTickinms = 1342701
H 0 18:52:22 TEST TICK (EURUSD, M30) Tick number = 4984 PriceBID = 1.32364 PriceASK = 1.3237 TimeTickinms = 1344355
เวลาการมาถึงของติ๊กที่แตกต่างกันในมิลลิวินาที, ราคาซื้อ/ขาย (ASK/BID) ที่แตกต่างกัน
ใน อาร์ไคฟ์นี้มีวัสดุทั้งหมดที่เกี่ยวข้องกับบทความนี้ รวมถึง ผู้ช่วยผู้เชี่ยวชาญ (Expert Advisors) เอง, วิดีโอ, ภาพ และไฟล์ล็อกของเทอร์มินัล
คำถามที่เกิดขึ้นคือ:
ผู้ช่วยผู้เชี่ยวชาญ (Expert Advisor) ตัวเดียวกันในสองบัญชีจริง/สด จากโบรกเกอร์เดียวและแพลตฟอร์มเดียวกัน สามารถดำเนินการเทรดที่เหมือนกัน 100% ได้หรือไม่?
คำตอบที่ชัดเจนคือ ไม่.
เหตุการณ์นี้ไม่เกิดขึ้น!
หวังว่าบทความนี้จะตอบคำถามของคุณอย่างละเอียดในอนาคต ด้วยความรู้นี้ คุณจะสามารถใช้งาน สเกลเปอร์ ของคุณได้อย่างแม่นยำมากขึ้นในเทอร์มินัลของคุณ
เพิ่มผลกำไรของคุณ
วิธีตรวจสอบ พิง (ping) (เวลาเข้าถึงเซิร์ฟเวอร์ของโบรกเกอร์)
ความเร็วจาก VPS ไปยังเซิร์ฟเวอร์ของโบรกเกอร์สามารถตรวจสอบได้ง่าย ฟังก์ชันนี้เป็นมาตรฐานใน Windows และเรียกว่า PING
ในการตรวจสอบเวลาเข้าถึง คุณต้องค้นหาที่อยู่เซิร์ฟเวอร์ของคุณ
ขั้นแรก ให้เปิดโฟลเดอร์เทอร์มินัลของคุณและไปที่โฟลเดอร์ย่อย CONFIG
ค้นหาไฟล์ที่มีชื่อเซิร์ฟเวอร์ของคุณ
ถัดไป เปิดไฟล์ใน Notepad และค้นหาเส้นทางไปยังโบรกเกอร์ของคุณ จากนั้นคัดลอกไว้ในคลิปบอร์ด
จากนั้น เปิดเมนู Start และพิมพ์คำสั่ง cmd
จากนั้น พิมพ์คำสั่ง ping ตามด้วยที่อยู่เซิร์ฟเวอร์ของคุณ
ping mt4-demo.roboforex.com
ผลลัพธ์จะแสดงเวลาในการส่งข้อมูลจากคอมพิวเตอร์ของคุณไปยังเซิร์ฟเวอร์ของโบรกเกอร์ในหน่วยมิลลิวินาที (ms)
ค่าที่ต่ำกว่าจะดีกว่าสำหรับ ผู้ช่วยผู้เชี่ยวชาญ (Expert Advisor) ทุกตัว โดยเฉพาะอย่างยิ่งสำหรับ สเกลเปอร์
คุณยังสามารถตรวจสอบพิงของคุณไปยังเซิร์ฟเวอร์หรือเปลี่ยน ศูนย์ข้อมูล (Data Center) ที่มุมล่างขวาของเทอร์มินัลของคุณได้:
หาก พิง ของคุณสูงเกินไป คุณสามารถติดตั้ง ผู้ช่วยผู้เชี่ยวชาญ (Expert Advisor) บน เซิร์ฟเวอร์ VPS ได้
มีคำถามหรือไม่?
หากคุณมีคำถามใด ๆ โปรดสอบถามได้โดยไม่ลังเล เราไม่ได้ขายอะไรที่คุณไม่เข้าใจ
คุณสามารถทดสอบผลิตภัณฑ์ของเราแต่ละชิ้นก่อนการซื้อได้
เราขอขอบคุณสำหรับข้อเสนอแนะและคำขอของคุณสำหรับผลิตภัณฑ์ของเรา และมุ่งมั่นที่จะรักษามาตรฐานคุณภาพที่สูง
ขอบคุณที่อยู่กับเรา!
คุณมีคำถามหรือไม่?
โพสต์นี้มีให้บริการใน: English Українська Portuguese Español Deutsch Chinese Русский Français Italiano Türkçe 日本語 한국어 العربية Indonesian ไทย Tiếng Việt
ใส่ความเห็น