กองทุน SPDR Gold Shares

ประจำวันที่

เวลา ครั้งที่ ก่อนหน้า ถือล่าสุด เปลี่ยนแปลง
- - - - -
รวมวันนี้-
เดือนนี้ - : 
ปีนี้  : 
*หน่วยตัน
*อ้างอิงจาก SPDR Gold Share

ราคาทองตามประกาศสมาคมค้าทองคำ

ประจำวันที่ ครั้งที่ เวลา น.

ชนิดทองคำ รับซื้อ ขายออก
ทองคำแท่ง 96.5% - -
ทองรูปพรรณ 96.5% - -
รวมวันนี้-
เปลี่ยนแปลงล่าสุด-
*หน่วยเงินบาท
*ราคาอ้างอิงล่าสุดจากสมาคมค้าทองคำ

เพิ่มการแจ้งเตือน Indicator แล้วมันเตือนไม่หยุด

  • 3 replies
  • 2,383 views
Indicator ที่ต้องการเพิ่มการแจ้งเตือนจะแสดงผล  Trend Up = ....% , Down=....%
โดยผมต้องการให้มันแจ้งเตือน 1 ครั้ง ของแต่ละรอบ

if (StrToDouble(Trend_UP) >= TrendStrongLevel)
    Alert(Symbol()+ " Trend_UP Test 01 ");              (ให้แจ้งเตือน 1 ครั้ง)

แล้วให้รอจนกว่า     

if (StrToDouble(Trend_DOWN) >= TrendStrongLevel)
    Alert(Symbol()+ " Trend_DOWN Test 01 ");              (ให้แจ้งเตือน 1 ครั้ง)

แต่รองเขียนแล้วเมื่อ (StrToDouble(Trend_) มากกว่า TrendStrongLevel แล้วมันแจ้งเตือนไม่หยุดเลย
เราจะเขียน Sleep หรือ break ให้มันได้หรือป่าวผมไม่รู้จะเขียนยังไง รบกวนช่วยทีครับ

Re: เพิ่มการแจ้งเตือน Indicator แล้วมันเตือนไม่หยุด
« ตอบกลับ #1 เมื่อ: 29, มีนาคม 2020, 03:54:25 PM »

ลองเขียนให้มัน alert เฉพาะ new bar ดูครับ

คำสั่ง alert ก็ทำเป็นฟั่งชั่น alert ขึ้นมาแล้วเรียกฟังชั่นออกมาใช้  แล้วในฟังชั่น ก็ใส่ code ทำงานเฉพาะ new bar เข้าไปครับ

ลองดู code new bar ได้ใน mql5.com ดูครับ มีหลายแบบลองก็อปมาใช้สักแบบ

หรือใช้เทนนิคอีเอ บางทีก็ใช้กันคือ ivolume  มีค่าไม่เกิน 1  เป็นต้น  (คือ ทำงานที่ tick ที่ 1)

ลองทดสอบดูครับ

ไอเดียอื่นๆ ลองตั้งค่า alerted สำหรับบันทึกว่า เตือนไปแล้วไว้ แล้วพอเตือนครั้งแรก ก็จะเซ็ตให้มันเป็นเตือนแล้ว พอซ้ำก็จะไม่ทำงาน แต่ต้องไปตั้งค่าให้มันเป็น 0 อีกทีตอนไม่มีออกมา ต้องลองไม่รู้จะ work หรือเปล่านะ

Re: เพิ่มการแจ้งเตือน Indicator แล้วมันเตือนไม่หยุด
« ตอบกลับ #2 เมื่อ: 30, มีนาคม 2020, 09:53:11 AM »
อ้างจาก: forcebewithyou ที่ 29, มีนาคม  2020, 03:54:25 PM

ลองเขียนให้มัน alert เฉพาะ new bar ดูครับ

คำสั่ง alert ก็ทำเป็นฟั่งชั่น alert ขึ้นมาแล้วเรียกฟังชั่นออกมาใช้  แล้วในฟังชั่น ก็ใส่ code ทำงานเฉพาะ new bar เข้าไปครับ

ลองดู code new bar ได้ใน mql5.com ดูครับ มีหลายแบบลองก็อปมาใช้สักแบบ

หรือใช้เทนนิคอีเอ บางทีก็ใช้กันคือ ivolume  มีค่าไม่เกิน 1  เป็นต้น  (คือ ทำงานที่ tick ที่ 1)

ลองทดสอบดูครับ

ไอเดียอื่นๆ ลองตั้งค่า alerted สำหรับบันทึกว่า เตือนไปแล้วไว้ แล้วพอเตือนครั้งแรก ก็จะเซ็ตให้มันเป็นเตือนแล้ว พอซ้ำก็จะไม่ทำงาน แต่ต้องไปตั้งค่าให้มันเป็น 0 อีกทีตอนไม่มีออกมา ต้องลองไม่รู้จะ work หรือเปล่านะ

ผมพอจะแก้โค้ดได้ แต่ผมไม่รู้จะเขียนฟังก์ชั่นยังไง รบกวนช่วยเขียนให้ดูได้ไหมครับ
โค้ดด้านล่างนี้เป็นโค้ดของ Indicator ที่ผมนำค่ามาใช้

   string trend;
   string comment;
   color coltrend;
   color colcomment;
   double xt, xc;

   if(StrToDouble(Trend_UP) >= TrendStrongLevel) { trend = "UP"; coltrend = Lime; xt = 935; comment = "[strong]"; xc = 921; colcomment = Lime; /* if (alert == true) { Alert(TimeToStr(TimeCurrent(),TIME_SECONDS)," Trend UP > "TrendStrongLevel"% on ",Symbol()," ", Bid); PlaySound("tick.wav"); } */ }

   else if(StrToDouble(Trend_UP) < TrendStrongLevel && StrToDouble(Trend_UP) >= 50) { trend = "UP"; coltrend = Lime; xt = 935; comment = "[weak]"; xc = 924; colcomment = Red; }

   else if(StrToDouble(Trend_DOWN) >= TrendStrongLevel) { trend = "DOWN"; coltrend = Red; xt = 918; comment = "[strong]"; xc = 921; colcomment = Red; /* if (alert == true) { Alert(TimeToStr(TimeCurrent(),TIME_SECONDS)," Trend DOWN > "TrendStrongLevel"% on ",Symbol()," ", Bid); PlaySound("tick.wav"); } */ }

   else if(StrToDouble(Trend_DOWN) < TrendStrongLevel && StrToDouble(Trend_DOWN) > 50) { trend = "DOWN"; coltrend = Red; xt = 918; comment = "[weak]"; xc = 924; colcomment = Red; }


 

XM Global Limited