exness,forex,เทรด forex,เล่น forex
เปิดบัญชี forex,สมัครเล่นหุ้น
ระบบเทรด,โปรแกรมเทรด,mt4
แสดงบทความที่มีป้ายกำกับ Expert Advisor แสดงบทความทั้งหมด
แสดงบทความที่มีป้ายกำกับ Expert Advisor แสดงบทความทั้งหมด

วันอาทิตย์ที่ 14 กรกฎาคม พ.ศ. 2556

การติดตั้ง Indicator

การเทรด CFD , Gold , forex และอื่นๆในตลาดต่างประเทศเราจะสามารถ เทรดผ่านโปรแกรมเทรดมาตรฐานแบบ Metatrader (MT4,MT5) ซึ่งเป็นแพตฟอร์มเปิดที่ได้รับความนิยมและใช้กันเป็นสากล ทำให้มีกลุ่มผู้ใช้และนักพัฒนามากมาย สร้างเครื่องมือวิเคราะห์ราคาสินค้าประเภทเทคนิคอล และมีการสร้าง algorithm สำหรับระบบเทรดอัตโนมัติ(Expert Advice) ให้เราได้นำมาทดลองใช้และศึกษา ในการพัฒนาระบบเทรดของเรา 


วันนี้มาลองดูวิธีติดตั้ง Indicator ประเภทพิเศษเพิ่่มเติมจากเครื่องมือพื้นฐานที่มากับโปรแกรม 

1. ดาวน์โหลด indicator จากเว็บที่เผยแพร่ 
โดยทั่วไป indicator จะเป็นไฟล์ประเภท .mt4 หรือ .mq4


2. เลือกไปที่
C:\Program Files\MetaTrader - exness\experts\indicators
กรณีไม่ได้ใช้ exness ชื่อของโฟล์เดอร์ก็เปลี่ยนไปตาม โบรกเกอร์ของท่าน

3. copy ไฟล์ที่ดาวน์โหลดมาใส่ลงใน ไดเรกทอรี่ด้านบน


4. เปิดโปรแกรม Mt4 ไปที่ แถบ Toolsbox >> Costom indicators เลือก indicator ที่ท่านติดตั้ง แล้ว ลากเข้าไปวางในกราฟ หรือ Click ขวา >> Attach to a chart



เมื่อติดตั้งสำเร็จ ได้เครื่องมือ indicator ดังภาพ





วันพุธที่ 19 มิถุนายน พ.ศ. 2556

แหล่งรวม Indicator Forex

สวัสดีครับ บทความนี้ผมจะรวบรวมเว็บที่โหลด Indicator ฟรีๆนะครับ เพื่อนๆจะได้ทำกำไรได้ง่ายขึ้น

Indicator หมายถึง เครื่องมือตัวชี้วัดของราคาตลาดไม่ว่าจะเป็น หุ้น ค่าเงิน อนุพันธ์ พันธบัตร เป็นต้น
แต่อินดี้(indicator)ใดๆก็ไม่ 100 เปอร์เซ็นเสมอไปนะคัฟ ฉนั้นก็อยู่ที่ตัวเราจะพิจารณาอย่างไรในการตัดสินใจเองนะครับ เพราะความแม่นยำอีกครึ่งหนึ่งอยู่ที่เราตัดสินเองคัฟ

Web Indicator Forex Free
www.richpips.com
www.cjatradingtools.com
www.forexdigg.info
www.ostryforex.com
www.forex-indicators.net
www.flamingoforex.com
www.best-metatrader-indicators.com

ว่างจะผมจะอัพให้เรื่อยๆนะครับ ขอบคุณครับ

วันพฤหัสบดีที่ 25 เมษายน พ.ศ. 2556

Expert Advisor คือ? มือใหม่คลิ๊ก


Expert Advisor หรือที่เราเรียกกันว่า "EA" (อีเอ)
เป็นเครื่องมือสำเร็จรูปชนิดหนึ่งที่ใช้ในการเข้าเทรดในโปรแกรม MetaTrader 4 หรือที่เรามักเรียกทั่วไปว่า "MT4ซึ่งอาจจะแบ่งออกไปหลายรูปแบบ แล้วแต่ผู้สร้างต้องการให้ EA มีเงื่อนไขการทำงานอย่างไร
อีเอบางชนิดก็ใช้ในการเทรดค่าเงินในทุกสกุลเงินอีเอบางตัวก็เทรดเฉพาะเจาะจงเพียงแค่คู่เงินใด คู่เงินหนึ่ง หรือแม้แต่อีเอที่ใช้สำหรับเทรดเฉพาะช่วงข่าว เป็นต้น ซึ่งการตัดสินใจ Short, Long อีเอก็จะทำงานตามที่ได้โปรแกรมไว้แล้ว


คุณลักษณะและคุณสัมบัติพิเศษของ EA คือ
Expert Advisor (EA) เป็นหนึ่งในเครื่องมือเพื่อเข้าช่วยเทรดของโปรแกรม MetaTrader 4 ซึ่งสามารถทำงานอัตโนมัติ 100% ได้ตลอด 24ชั่วโมง ตลอดระยะ เวลาการลงทุน โดยเมื่อถึงจุดที่สมควรทำการซื้อ หรือขาย อีเอจะมีการสั่งคำสั่ง Long หรือ Short ออกไปยังโบรกเกอร์ หรือแม้แต่อีเอบางตัวยังสามารถจัดการเรื่องระบบการเงิน อัตราส่วนการลงทุนให้เรียบร้อย

การใช้งาน EA
.ในการใช้งาน EA นั้นเราต้องนำ EA ที่ได้เข้าสู่ Program MT4 หลังจากนั้นก็ทำการ Back Test เพื่อทดสอบการทำงานกับเงินปลอมก่อนและเมื่อได้ผลเป็นที่น่าพอใจจึงนำมาใช้กับเงินจริงครับ ซึ่งการใช้งาน EA เราจะต้องเปิดเครื่องให้ Run ตลอดเวลานะครับ เพื่อที่ EA จะได้ทำงานแทนเรา นั้นแหละครับ ซึ่งบางท่าน อาจจะใช้ Server Run EA ก็ได้
การนำ EA เข้าสู่ Program MT4
ในกรณีนี้เราจำเป็นต้องมี EA ก่อนนะครับ ซึ่งบางท่านอาจจะเขียนขึ้นมาใช้งานเองบางท่านอาจจะซื้อ ตาม Web ต่างๆ ซึ่งแสดงผลงานให้เราได้เห็นและเป็นที่น่าพอใจ หรือบางท่านอาจ จะนำ EA มาจาก Board Free ต่างๆ ก็ได้นะครับ ยกตัวอย่างเลยนะครับสมมุติว่าผมมี EA ชื่อ The Master Mind (จะเป็น นามสกุล Mqh หรือ Ex4 ก็ได้ครับ : Mqh สามารถกแก้ไข Code Program ได้ : Ex4 ไม่สามารถแก้ไข Code Programได้) ให้นำไฟล์ที่มีอยู่ไปเก็บไว้ที่

แจก  EA เทพ  ผมทดสอบแล้วครับ ได้กำไร ตลอด ยังไม่เคยล้างพอทสำหรับ EA สองตัวนี้ ต้องเป็น บัญชี Cent เท่านั้น

สำหรับทุน 15$ ขึ้นไป 

สำหรับ เงินทุุน 300$ ขึ้นไป 



ปล. ถ้าจะใช้กับบัญชีดอล หรือ MINI ตัวแรกต้องใช้ทุน 1500$ตัวที่สอง ใช้ 30000$ ขึ้นไป 
สิ่งที่สำคัญ
1. โบรค 5 จุด ( โบรก exness )
2. บัญชี cent รองรับการเทรดที่ volume ทศนิยม 2 จุด (ตัวอย่างคือ 0.01 หรื 0.02) ข้อนี้สำคัญมาก 
3. broke ยอมให้เทรด สวนทางกัน( โบรก exness )
4. ใช้กับค่าเงิน GU เท่านั่น เพราะอะไร มันสวิงดี รวมถึงเขาคำนวนค่า pip ที่เหมาะสมมาแล้ว
5. leverage 1:500( โบรก exness leverage : 1:2000 )
6. broke ไหนยิ่งตัดเร็วยิ่งดี( โบรก exness )
7. ค่า TF ตั้งไว้ที่ M1


วิธีการตั้งค่า
1. เปิด หน้าต่าง gb/usd (ใช้กับค่าเงินนี้เท่านั้น) มา 2 หน้าต่าง ทั้ง 2 หน้าต่าง ปรับ TF ที่ M1 เท่านั่น
2. ตัว expert ตัวที่ชื่อ Robot Forex 2057 Buy Long (RUS) (GBPUSD M1)  ลากมาวางหน้าต่าง gu หน้าต่างแรก 
เซ็ตตรง Common ตรง position เป็น  Only Long  แก้ตรง tab Inputs ปรับ จากบันทัดที่ 8 นับจากบนลงมา ให้เป็นค่าที่เริ่มการเบิ้ล เจ้าของเขาแนะนำที่เริ่มต้นที่ 0.01 แล้วกด 

OK
3. ตัว expert ตัวที่ชื่อ Robot Forex 2057 Sell Short (RUS) (GBPUSD M1)  ลากมาวางหน้าต่าง gu 
หน้าต่างแรก เซ็ตตรง Common ตรง position เป็น  Only Short แก้ตรง tab Inputs ปรับ จากบันทัดที่ 8 นับจากบนลงมา 
ให้เป็นค่าที่เริ่มการเบิ้ล เจ้าของเขาแนะนำที่เริ่มต้นที่ 0.01 แล้วกด OK
4. กด Run bot เป็นอันเริ่มต้นการทำงาน



การติดตั้ง Expert Advisor (EA) ระบบการซื้อ/ขายหุ้นอัตโนมัติในโปรแกรม Metatrader 4






(ถ้ารูปที่หน้าเวปมันเล็กดูไม่ชัดก็ให้บันทึกมาไว้ที่เครื่องแล้วเปิดดูครับ หรือก๊อปปี้ลิ้งค์ของรูปภาพไปเปิดที่หน้าใหม่ของบราวเซอร์ก็ได้ครับ ภาพมันจะใหญ่ครับ)

เพิ่มเติมครับสำหรับ Expert Advisor (EA) ที่มีไฟล์ dll และไฟล์ set มาให้ครับ
o Copy Expert Advisor (EA) ไปที่ C:\Program Files\MetaTrader - EXNESS\experts
o Copy ไฟล์ dll ไปที่ C:\Program Files\MetaTrader - EXNESS\experts\libraries
o Copy ไฟล์ set ไปที่ C:\Program Files\MetaTrader - EXNESS\experts\presets

(สำหรับ Expert Advisor (EA) ที่มีไฟล์ set มาให้ เราต้องเรียกใช้งานก่อนทุกครั้ง ด้วยคำสั่ง Load ใน Properties ของ Expert Advisor (EA)) 

วันพฤหัสบดีที่ 20 ธันวาคม พ.ศ. 2555

ทำความเข้าใจกับเครื่องมือใน MT4


ทำความเข้าใจกับเครื่องมือใน MT4



รูปที่โพสต์การตีเส้นต่างๆ รูปที่โพสต์
วิธีใส่ตัวหนังสือ และอักษร ลงในกราฟ 

รูปที่โพสต์

รูปที่โพสต์
Tool Bar ต่อ 

รูปที่โพสต์

รูปที่โพสต์
File

รูปที่โพสต์
view 


รูปที่โพสต์
insert

รูปที่โพสต์
chart 

รูปที่โพสต์

ต่อProperties / common ตอนแรกไม่ได้ลงไว้ 
รูปที่โพสต์

tool และ window 
รูปที่โพสต์
สุดท้าย help 

รูปที่โพสต์

แปลว่า ยังไม่เข้าใจ ให้ไปเปิดดู ว่า ตรงไหนทำไรได้บ้าง :03 :03 ซึ่งปกติ ตัวนี้ ต้องมาก่อนเพื่อน แต่ เปิดทีหลังเพื่อนทุกครั้ง 


ขั้นตอนต่อไป การปรับแต่งและลงอินดี้ที่มีอยู่ในโปรแกรม

วันอังคารที่ 18 ธันวาคม พ.ศ. 2555

วิดีโอเขียน EA forex

วิดีโอที่ 1



วิดีโอที่ 2



วิดีโอที่ 3



วิดีโอที่ 4



วิดีโอที่ 5

สิ่งสำคัญที่ไม่ควรมองข้ามในการเขียน EA


สิ่งสำคัญที่ไม่ควรมองข้ามในการเขียน EA

สิ่งที่เราคาดหวังจาก Expert Advisor (EA) นั้น นอกจากการความาสามารถในการกำไรให้เราแล้วนั้น สิ่งหนึ่งที่เราต้องการก็คือ การทำงานที่ถูกต้องโดยไม่เกิดข้อผิดพลาด ซึ่งหลังจากที่เราเขียน EA เสร็จแล้วเราจะต้องทำการทดสอบด้วย Strategy Tester เพื่อให้แน่ใจว่าการทำงานของ EA นั้นสามารถทำงานได้ตรงตามที่เราคาดหวังไว้ ซึ่งการทดสอบ EA วิธีการนี้เป็นเพียงการทดสอบขั้นต้นเท่านั้น เพราะในสภาวะของการใช้งานจริงจะมีปัญจัยที่จะสารมารถที่ทำให้เกิดความผิดพลาดหรือการการงานผิดเพี้ยนจากหลักการที่กำหนดให้ตัว EA คือ ในสถานะการณ์ที่มีความผันผวน เมื่อมีการส่งคำสั่งซื้อ (BUY) หรือส่งคำสั่งขาย (SELL) เราอาจจะไม่สามารถซื้อหรือขายได้ในราคาที่เราต้องการ เพราะในขณะที่เราส่งคำสั่งซื้อ/ขายไปนั้น ราคาได้มีการเปลี่ยน ยกตัวอย่างการส่งคำสั่งซื้อ
        


         ticket=OrderSend(Symbol(),OP_BUY,lot,price,3,0.0,tp,NULL,255,0,CLR_NONE);   

จะเห็นว่าตรงตำแหน่งของเลข 3 คือ จำนวนจุดที่ยอมรับได้เมื่อราคาเปลี่ยนไป เช่น ต้องการซื้อที่ราคา 1.5000 แต่เมื่อส่งคำสั่งไปราคาเปลี่ยนไปเป็น 1.5002 อย่างนี้ฝั่งโปรกเกอร์จะประมวลผลให้ แต่ถ้าราคากระโดดไปเป็น 1.5010 ซึ่งสามารถเกิดขึ้นได้ในช่วงที่มีข่าว อย่างนี้เราจะไม่สามารถซื้อได้ในราคาที่ EA เราคำนวณจุดซื้อไว้ได้ ซึ่งถือจะว่า EA ทำงานผิดพลาด และถ้าแย่ไปกว่านั้น ถ้าเราเขียน EA ให้ส่งคำสั่งซื้อไปจนกว่าจะสามารถซื้อได้ นี่แหละที่จะทำให้มีโอกาสล้างพอร์ตได้ เพราะฉะนั้นการจะเขียนอีเอต้องสนใจในทุกรายละเอียด ต้องทดสอบด้วย Strategy Tester เพื่อดูการทำงานว่ามีส่วนไหนทำงานผิดพลาดรึปล่าว เมื่อแน่ใจว่าทำงานตรงตามที่ต้องการแล้ว ให้ทำการรัน EA ด้วยบัญชี Demo ประมาณ 1 เดือน เพื่อดูว่าเทคนิคที่เราใช้นั้นสามารถทำเงินได้จริงๆ และเพื่อเป็นการทดสอบการทำงาน EA ในสถานการณ์จริงด้วย ถ้าผลการทำงานเป็นที่น่าพอใจเราค่อยนำ EA ไปใช้กับบัญชีเงินจริง

        สำหรับท่านที่ต้องการเรียนรู้เกี่ยวกับการเขีนยโค๊ด รบกวนรอหน่อยนะครับ จะพยายามอัพเดตให้เร็วที่สุด ขอบคุณสำหรับการติดตามครับ

ที่มา http://onlinemakeemoney.blogspot.com

การเขียน EA เพื่อแสดงข้อความบน Chart


การเขียน EA เพื่อแสดงข้อความบน Chart


ในการเขียน EA บางครั้งเราจำเป็นต้องแสดงผลของค่าบางค่าที่เราต้องการบน Chart เพื่อให้ง่ายต่อการตรวจสอบผลการทำงานของ EA ว่าทำงานได้ถูกต้องตามเงื่อนไขที่เราตั้งไว้หรือไม่
        จากตัวอย่างด้านล่างเป็นการแสดงผลขอกำไร/ขาดทุนของ Order ที่เราเปิดอยู่ ซึ่งจะแสดงหมายเลข Ticket และ Profit ที่เกิดขึ้น


การเขียน EA

ตัวอย่างการเขียนโค๊ด


int getLastOrderProfit() {
  
string name = "strProfit";
  
string strDispaly;
  
for(int i=0;i<OrdersTotal();i++){
     
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==true){
        
if(OrderSymbol()==Symbol()){
            strDispaly
= "Order Ticket "+ OrderTicket()+" Profit: " + DoubleToStr(OrderProfit(),0);
           
ObjectCreate(name,OBJ_LABEL,0,0,0);
           
ObjectSet(name,OBJPROP_XDISTANCE,5);
           
ObjectSet(name,OBJPROP_YDISTANCE,80);
           
ObjectSetText(name,strDispaly,14,"Arial",DodgerBlue);
           
return(OrderProfit());
        
}
     
}   
  
}        

}

int start() {
if(OrdersTotal()>0) {
getLastOrderProfit
();
}
}


ที่มา http://onlinemakeemoney.blogspot.com

เขียน EA ตรวจสอบ Candlestick Pattern


เขียน EA ตรวจสอบ Candlestick Pattern

The Bearish Engulfing pattern

forex
    รูปแบบของ Bearish Engulfing คือ รุปแบบที่เป็นสัญญาณของการกลับตัวจากภาวะตลาดกระทิง(Up Trend) ไปสู่ภาวะตลาดหมี(Down Trend) จะเกิดแท่งเทียนทึบ(หมายเลข1)ครอบ แท่งเทียนโปร่ง(หมายเลข2) โดยที่ราคาเปิดและราคาปิดของแท่งเทียนโปร่งจะต้องอยู่ระหว่างราคาเปิดและราคาปิดของแท่งเทียนทึบ ดูภาพประกอบเพื่อความเข้าใจ
    ก่อนที่เราจะทำการเขียน EA เพื่อตรวจสอบว่า รูปแบบของกราฟแท่งเทียนที่เกิดขึ้นนั้น ใช่รูปแบบของ Bearish Engulfing Pattern รึปล่าวนั้น เราต้องทำการกำหนดเงื่อนไขของรูปแบบนี้ก่อนด้วยภาษาพูดและค่อยแปลงให้เป็นภาษา MQL
    เงื่อนไขของ Bearish Engulfing Pattern
  1. เราจะทำการตรวจสอบเมื่อเกิดแท่งเทียนแท่งใหม่ ใช้รูปประกอบ คือเมื่อเกิดแท่งเทียนหมายเลข 0
  2. ราคาเปิดของแท่งเทียนหมายเลข1 ต้องมากกว่าราคาปิดของแท่งเทียนหมายเลข1 ใช้เพื่อตรวจสอบว่าเป็นแท่งเทียนทึบ
  3. ราคาเปิดของแท่งเที่ยนหมายเลข2 ต้องน้อยกว่าราคาปิดของแท่งเทียนหมายเลข2 ใช้ตรวจสอบว่าเป็นแท่งเทียนโปร่ง
  4. ราคาเปิดของแท่งเทียนหมายเลข2 ต้องมากกว่าราคาปิดของแท่งเทียนหมายเลข1 และ ราคาปิดของแท่งเทียนหมายเลข2 ต้องน้อยกว่าราคาเปิดของแท่งเทียนหมายเลข1 ใช้เพื่อตรวจสอบว่าเป็น Bearish Engulfing Pattern
  5. ราคาเปิดของแท่งเทียนหมายเลข3 ต้องน้อยกว่าราคาปิดของแท่งเทียนหมายเลข3 ใช้ตรวจสอบว่าเป็นแท่งเทียนโปร่ง
  6. ส่วนต่างของราคาปิดกับราคาเปิดของแท่งเทียนหมายเลข3 ต้องมากกว่า ส่วนต่างของราคาปิดกับราคาเปิดของแท่งเทียนหมายเลข2 ใช้เพื่อเป็นการยืนยันว่าเป็น Up Trend
  7. ทุกเงื่อนไขเป็นจริงก็ให้ทำการเปิด Order Sell 
     หลังจากได้สัญญาณจากกราฟแล้ว ถ้าใครต้องการจะรอสัญญาณจาก Indicator ตัวอื่นเป็นตัวยืนยันก็สามารถทำได้ครับ แล้วแต่เทคนิคของแต่ละคน อย่างงัยก็คอยติดตามด้วยนะครับ ถ้าว่างเมื่อไหร่จะมาเขียนให้ผู้ที่สนใจเรียนรู้การเรียน EA ได้ใช้เป็นแนวทางในการเขียนต่อไปครับ...

     ลงมือเขียน Code
/* กำหนด Timeframe = 5 นาที */ int TF = PERIOD_M5; /* กำหนดตัวแปรเพื่อใช้เก็บค่าของจำนวน Bar ใน Chart */ int pbl_Bars=0; int start() { /* ในครั้งแรกที่เริ่มรัน EA เราจะยังไม่ทำการตรวจสอบ Candlestick Parttern */ if(pbl_Bars==0) { //เก็บค่าจำนวนของ Bar ที่มีใน Chart pbl_Bars = Bars; //กำหนด Bar ที่จะทำการตรวจสอบ pbl_Bars++; //ออกจากฟังก์ชั้น return (0); } /* 1. เราจะทำการตรวจสอบเมื่อเกิดแท่งเทียนแท่งใหม่ */ if(pbl_Bars==Bars) { /* แยกเป็นฟังก์ชั่นย่อย ถ้าตรวจสอบแล้วว่าเป็น Bearish Engulfing Pattern จะคืนค่ากลับมาเป็น true */ if(isBearish_Engulfing()) { /* 7.ทุกเงื่อนไขเป็นจริงก็ให้ทำการเปิด Order Sell */ /* OpenOrder เป็นฟังก์ชันย่อย ใช้ในการเปิด Order */ OpenOrder(OP_SELL); } /* เมื่อเข้ามาตรวจสอบแล้ว ถ้ายังไม่เปลี่ยนเป็นแท่งใหม่ก็จะไม่เข้ามาอีก */ pbl_Bars--; } return (0); } bool isBearish_Engulfing() { /* 2.ราคาเปิดของแท่งเทียนหมายเลข1 ต้องมากกว่าราคาปิดของแท่งเทียนหมายเลข1 */ if(!(iOpen(Symbol(),TF,1) > iClose(Symbol(),TF,1))) { /* ถ้าไม่ต้องตามเงื่อนไขทีี่ 2 ก็ออกจากฟังก์ชัน */ return (false); } /* 3.ราคาเปิดของแท่งเที่ยนหมายเลข2 ต้องน้อยกว่าราคาปิดของแท่งเทียนหมายเลข2 */ if(!(iOpen(Symbol(),TF,2) < iClose(Symbol(),TF,2))) { /* ถ้าไม่ต้องตามเงื่อนไขทีี่ 3 ก็ออกจากฟังก์ชัน */ return (false); } /* 4.ราคาเปิดของแท่งเทียนหมายเลข2 ต้องมากกว่าราคาปิดของแท่งเทียนหมายเลข1 และ ราคาปิดของแท่งเทียนหมายเลข2 ต้องน้อยกว่าราคาเปิดของแท่งเทียนหมายเลข1 */ if(!((iOpen(Symbol(),TF,2) > iClose(Symbol(),TF,1)) && (iClose(Symbol(),TF,2) < iOpen(Symbol(),TF,1)))) { /* ถ้าไม่ต้องตามเงื่อนไขทีี่ 4 ก็ออกจากฟังก์ชัน */ return (false); } /* 5.ราคาเปิดของแท่งเทียนหมายเลข3 ต้องน้อยกว่าราคาปิดของแท่งเทียนหมายเลข3 */ if(!((iOpen(Symbol(),TF,3) < iClose(Symbol(),TF,3))) { /* ถ้าไม่ต้องตามเงื่อนไขทีี่ 5 ก็ออกจากฟังก์ชัน */ return (false); } /* 6.ส่วนต่างของราคาปิดกับราคาเปิดของแท่งเทียนหมายเลข3 ต้องมากกว่า ส่วนต่างของราคาปิดกับราคาเปิดของแท่งเทียนหมายเลข2 */ if(! ((iClose(Symbol(),TF,3) - iOpen(Symbol(),TF,3)) > (iClose(Symbol(),TF,2) - iOpen(Symbol(),TF,2)))) { /* ถ้าไม่ต้องตามเงื่อนไขทีี่ 6 ก็ออกจากฟังก์ชัน */ return (false); } /* เข้าเงื่อนไขของ Bearish Engulfing Pattern */ return (true); } bool OpenOrder(int cmd) { /* คำสั่งในการเปิด Order จะมาอัพเดตทีหลังครับ }



Candlestick Pattern ยังมีอีกหลายรูปแบบ แล้วผมจะมาเขียนต่อในคราวหน้าครับ 


ที่มา http://onlinemakeemoney.blogspot.com














ตัวอย่างการเขียน EA เพื่อเปิด Order โดยครอบคลุมทั้ง BUY และ SELL


ตัวอย่างการเขียน EA เพื่อเปิด Order โดยครอบคลุมทั้ง BUY และ SELL

การเขียนโปรแกรมที่ดีควรเขียนแยกการทำงานออกเป็นส่วนๆหรือที่เรียกว่าฟังก์ชั่น เพื่อให้ง่ายต่อการวิเคราะห์ในการหาข้อผิดพลาดจากการทำงานของโปรแกรม การเขียน EA ก็เหมือนกัน ถ้าเราเขียนโดยแยกออกเป็นฟังก์ชั่นก็จะทำให้ง่ายต่อการแก้ไขปรับปรุง ในกรณีที่เราต้องการปรับเปลี่ยนเทคนิคในการเทรด 
    มาดูฟังก์ชั่นในการเปิด Order ซึ่งเป็นฟังก์ชั่นหลักฟังก์ชั่นหนี่งของ EA ก็ว่าได้ เพราะถ้าฟังก์ชั่นนี้ทำงานผิดพลาดนั่นหมายถึงหายนะกำลังมาเยือน เพราะฉะนั้นต้องมั่นใจว่าฟังก์ชั่นนี้จะไม่ทำงานผิดพลาด ไม่ว่าสถานการณ์ของตลาดจะผันผวนก็ตาม


/* ฟังก์ชั่นนี้จะทำงานเมื่อมีสัญญาณมาจากฝั่ง Server */
int start(){

/* เมื่อเราตรวจสอบราคาด้วยอินดิเคเตอร์ใดๆแล้ว แล้วถึงจุดที่ต้องการเปิด Order */
/* ยกตัวอย่าง ถ้าต้องการเปิด ORDER BUY และ Lotsize เท่ากับ 1
openOrder(OP_BUY,1);

/* ยกตัวอย่าง ถ้าต้องการเปิด ORDER SELL และ Lotsize เท่ากับ 1
openOrder(OP_SELL,1);

return(0);
}

/* ฟังก์ชั่นสำหรับเปิด Order
bool openOrder(int cmd,double lot,double tp=0.0) {
int ticket,count;
int error;
double price;
count = 0;
ticket = -1;

/* วนลูปเพื่อส่งคำสั่งซื้อจนกว่าจะเปิด Order ได้ แต่ไม่เกิน 5 ครั้ง */
while((ticket<0) && (count < 5)){ /* ถ้าเป็นคำสั่ง BUY ให้ซื้อที่ Ask */ if(cmd==OP_BUY) price=Ask; /* ถ้าเป็นคำสั่ง SELL ให้ซื้อที่ Bid */ else price=Bid; /* ถ้าเป็นคำสั่ง BUY */ if(cmd==OP_BUY){ ticket=OrderSend(Symbol(),OP_BUY,lot,price,3,0.0,tp,NULL,255,0,CLR_NONE); /* ตรวจสอบว่าเปิด Order สำเร็จรึปล่าว */ if(ticket<0){ error = GetLastError(); Print("Error:Send Buy Order LastError = ",error," price=",price); /* ถ้า error code เกี่ยวกับราคาที่เปลี่ยนไปจากราคาที่ต้องการให้อ่านค่าใหม่ */ if(error==129 || error==135 || error==146 || error==138){ RefreshRates(); } }else{ /* ได้รับค่า ticket แสดงว่าเปิด Order สำเร็จ */ return (true); } /* ถ้าเป็นคำสั่ง SELL */ }else { ticket=OrderSend(Symbol(),OP_SELL,lot,price,3,0.0,tp,NULL,255,0,CLR_NONE); if(ticket<0 ){ error = GetLastError(); Print("Error:Send Sell Order LastError = ",error," price=",price); if(error==129 || error==135 || error==146 || error==138){ RefreshRates(); } }else { /* เปิด Order สำเร็จ */ return (true); } } /* เปิด Order ไม่สำเร็จกับไปเปิดใหม่ */ count++; } /* ไม่สามารถเปิด Order ได้ */ return (false); }

    พยายามคิดการทำงานออกมาให้เป็นส่วนๆ แต่ละส่วนทำงานแยกขาดออกจากกัน จะทำให้เราได้ฟังก์ชั่นที่สามารถนำเอาไปใช้ทำงานร่วมกับ EA ตัวอื่นได้ ขอให้สนุกับการเขียน EA ครับ

ที่มา http://onlinemakeemoney.blogspot.com

รู้สักนิดก่อนเขียน EA - ราคาการซื้อและขายของ BUY กับ SELL


รู้สักนิดก่อนเขียน EA - ราคาการซื้อและขายของ BUY กับ SELL

สิ่งหนึ่งที่ผู้เขียน EA หรือแม้แต่ผู้เทรด Forex ต้องทำความเข้าใจเกี่ยวกับการเปิด Order ก็คือ ต้องรู้ว่า
  •  Order Buy ซื้อที่ราคา Ask ขายที่ราคา Bid
  • Order Sell  ซื้อที่ราคา Bid ขายที่ราคา Ask

แล้วอย่างไง ??

สมมติว่าเรามี Order Buy อยู่ในมือและราคาปัจุบันอยู่ที่ 1.6100 และเราคิดว่าเราจะเขียน EA เพื่อ Modify Order นี้เพื่อตั้ง TP (Target Profit) ให้ Order นี้ปิดที่ราคา 1.6150 ซึ่ง Order นี้เป็น Order Buy ราคา 1.6150 จึงเป็นราคา Ask แต่เราต้องปิดที่ราคา Bid เพราะฉะนั้น  ราคาที่จะทำให้ Order นี้ปิดก็คือ 1.6150 + Spread (ค่า Spread คือค่าความต่างระหว่างราคา Ask กับ ราคา Bid ซึ่งค่า Spread นี้จะมีความต่างไม่เท่ากันขึ้นอยู่กับคูเงินที่เราเทรด และขึ้นอยู่กับโปรกเกอร์หรือลักษณะของบัญชีที่เราเปิด แต่ในการเขียน EA เพื่อคำนวณหาค่านี้จะเขียนเหมือนกันคือ Ask -Bid

          
          double TP;
          bool result; 
          TP = 1.6150 + (Ask-Bid);
          result=OrderModify(OrderTicket(),OrderOpenPrice(),0,TP.0,0,CLR_NONE);

ตัวฟังก์ชั่นเต็มผมจะยังไม่พูดถึงนะครับ บทความนี้ต้องการให้เข้าใจเรื่องของราคาตรงนี้ก่อน

จากตัวอย่างด้านบน สมมติว่าเป็นราคาของคู่เงิน  GBP/USD  และ Ask - Bid = 0.0003

TP = 1.6150 + 0.0003;
TP = 1.6153; นี่ืคือราคาที่ปิด Order แต่ราคาตลาดจะเป็น 1.6156  งงปล่าวเนี่ย
เอาเป็นว่า ถ้าเป็น Order Buy จะปิดที่ ราคาที่เราอยากให้ปิด + (Ask - Bid)


ส่วน Order Sell ก็เป็นส่วนกลับของ ซึ่งจะเปิดที่ ราคาที่เราอยากให้ปิด - (Ask - Bid)

ไม่มีอะไรยาก แค่เรายังไม่รู้ ของให้สนุกกับการเรียนรู้แล้วเราก็จะรู้เอง
ขอบคุณสำหรับการติดตาม
ที่มา http://onlinemakeemoney.blogspot.com