การเทรดด้วยระบบ

ระบบเทรด Extremum สำหรับ MetaTrader 5 ที่คุณไม่ควรพลาด
MetaTrader5
ระบบเทรด Extremum สำหรับ MetaTrader 5 ที่คุณไม่ควรพลาด

ในโลกของการเทรด การใช้ระบบที่มีประสิทธิภาพเป็นสิ่งสำคัญมาก วันนี้เราจะพูดถึง ระบบเทรด Extremum ที่ใช้ อินดิเคเตอร์ Extremum เพื่อช่วยในการตัดสินใจทำการซื้อขาย สัญญาณในการเปิดออเดอร์จะเกิดขึ้นเมื่อแท่งของ ฮิสโตแกรม เปลี่ยนจากสีเขียวเป็นสีแดง หรือในทางกลับกัน การปิดออเดอร์สามารถทำได้โดยใช้ Pending Order หรือเมื่อสีของแท่งฮิสโตแกรมตรงข้ามกับตำแหน่งที่เปิดอยู่ ให้คุณวางไฟล์ Extremum.ex5 ลงในโฟลเดอร์ terminal_data_folder\MQL5\Indicators เพื่อเริ่มใช้งาน ในการทดสอบที่แสดงด้านล่าง เราใช้ค่าพารามิเตอร์เริ่มต้นของ Expert Advisor โดยไม่ได้ใช้ Stop Loss และ Take Profit ในระหว่างการทดสอบ ภาพที่ 1. ประวัติการทำธุรกรรมในกราฟ. ผลการทดสอบในปี 2011 ที่คู่เงิน USDCHF ระยะเวลา H4: ภาพที่ 2. กราฟผลการทดสอบ

2012.12.14
ระบบเทรดด้วย VortexIndicator สำหรับ MetaTrader 5
MetaTrader5
ระบบเทรดด้วย VortexIndicator สำหรับ MetaTrader 5

สวัสดีครับเพื่อนๆ นักเทรดทุกคน! วันนี้เราจะมาพูดถึงระบบการเทรดที่ใช้ VortexIndicator ซึ่งเป็นตัวช่วยที่มีประสิทธิภาพในการตัดสินใจซื้อขายครับ ระบบนี้ทำงานโดยการสร้างสัญญาณเมื่อปิดแท่งเทียน และสีของเมฆเปลี่ยนไป ถ้าเราเห็นว่าสีของเมฆเปลี่ยนเป็นสีตรงข้ามกับตำแหน่งที่เปิดอยู่ เราสามารถออกจากการเทรดได้เลยครับ อย่าลืมว่าให้วางไฟล์ VortexIndicator.ex5 ลงในโฟลเดอร์ terminal_data-folder\MQL5\Indicators เพื่อให้ใช้งานได้อย่างถูกต้องนะครับ ในบทความนี้จะใช้ค่าพารามิเตอร์เริ่มต้นของ Expert Advisor ในการทดสอบ ซึ่งในการทดสอบนี้เราไม่ได้ใช้ Stop Loss และ Take Profit ครับ ภาพประกอบ: Fig. 1. ประวัติการทำรายการบนกราฟ ผลการทดสอบในปี 2011 สำหรับคู่เงิน USDCHF แท่ง H4: Fig. 2. กราฟผลการทดสอบ

2012.12.14
แนะนำเครื่องมือ Machine Learning สำหรับการเทรด: Schnick Demo ใน MetaTrader 5
MetaTrader5
แนะนำเครื่องมือ Machine Learning สำหรับการเทรด: Schnick Demo ใน MetaTrader 5

สวัสดีครับเพื่อนๆ นักลงทุนทุกคน วันนี้เราจะมาพูดถึงเครื่องมือ Machine Learning ที่น่าสนใจอย่าง "การเรียนรู้ของเครื่อง: วิธีใช้ Support Vector Machines ในการเทรด" ที่โพสต์ในเว็บไซต์ MQL5 กันครับ เวอร์ชันนี้ของโค้ดถูกเขียนขึ้นเพื่อใช้ร่วมกับเวอร์ชัน เดโม ของเครื่องมือ Support Vector Machine Learning Tool ที่มีให้ใช้ฟรีที่ MQL5 Market.ลองจินตนาการถึงสถานการณ์สมมุติว่าคุณเป็นนักวิจัยที่กำลังศึกษาสัตว์หายากชนิดหนึ่งที่พบเฉพาะในอาร์กติกชื่อว่า Schnick โดยเนื่องจากความห่างเหินของสัตว์เหล่านี้ มีเพียงไม่กี่ตัวที่เคยพบ (ประมาณ 5000 ตัว) คุณจึงติดอยู่กับคำถามว่า... เราจะระบุว่า Schnick คืออะไรได้อย่างไร?สิ่งที่คุณมีอยู่คือเอกสารวิจัยที่เผยแพร่โดยนักวิจัยที่เคยเห็นสัตว์เหล่านี้ โดยในเอกสารเหล่านั้นได้อธิบายลักษณะเฉพาะบางอย่างของ Schnicks ที่พวกเขาพบ เช่น ความสูง น้ำหนัก จำนวนขา เป็นต้น แต่ทุกอย่างดูแตกต่างกันไปในแต่ละเอกสารไม่มีรูปแบบที่ชัดเจน...เราจะใช้ข้อมูลนี้ในการระบุสัตว์ใหม่ว่าเป็น Schnick ได้อย่างไร?ทางออกหนึ่งที่เป็นไปได้คือการใช้ Support Vector Machine เพื่อระบุรูปแบบในข้อมูลและสร้างกรอบการทำงานที่สามารถใช้ในการจำแนกสัตว์เป็น Schnick หรือไม่เป็น Schnick ได้ ขั้นตอนแรกคือการสร้างชุดข้อมูลที่สามารถใช้ในการฝึก Support Vector Machine ของคุณในการระบุ Schnicks โดยข้อมูลการฝึกคือชุดข้อมูลที่มีการป้อนเข้ากับผลลัพธ์ที่ตรงกันเพื่อให้ Support Vector Machine วิเคราะห์และดึงรูปแบบจากข้อมูลนั้นในโพสต์นี้ เราจะมาสาธิตพลังของการใช้ Support Vector Machines ในการแก้ปัญหาการจำแนกประเภท โดยการใช้เครื่องมือ Support Vector Machine Learning Tool ที่มีให้ที่ MQL5 Market. รายละเอียดเต็มๆ เกี่ยวกับปัญหาสมมุตินี้และโค้ดสามารถดูได้ในบทความ "การเรียนรู้ของเครื่อง: วิธีใช้ Support Vector Machines ในการเทรด" ซึ่งในบทความจะมีการสอนการใช้สคริปต์และวิธีการที่ปัญหานี้สามารถให้ข้อมูลเชิงลึกในการใช้ Machine Learning เพื่อประเมินแนวโน้มของตลาดโค้ด://+------------------------------------------------------------------+ //|                                                 Schnick_Demo.mq5 | //|                        Copyright 2011, MetaQuotes Software Corp. | //|                                              http://www.mql5.com | //+------------------------------------------------------------------+ #property copyright "Copyright 2011, MetaQuotes Software Corp." #property link      "http://www.mql5.com" #property version   "1.00" //+------------------------------------------------------------------+ //| This script demonstrates the capabilities of the Support Vector //|                     Machine Learning Tool //+------------------------------------------------------------------+ //+------------------------------------------------------------------+ //| The following statement imports all of the functions included in //| the Support Vector Machine Tool 'svMachineTool.ex5' //+------------------------------------------------------------------+ #import "svMachineTool_demo.ex5" enum ENUM_TRADE {BUY,SELL}; enum ENUM_OPTION {OP_MEMORY,OP_MAXCYCLES,OP_TOLERANCE}; int  initSVMachine(void); void setIndicatorHandles(int handle,int &indicatorHandles[],int offset,int N); void setParameter(int handle,ENUM_OPTION option,double value); bool genOutputs(int handle,ENUM_TRADE trade,int StopLoss,int TakeProfit,double duration); bool genInputs(int handle); bool setInputs(int handle,double &Inputs[],int nInputs); bool setOutputs(int handle,bool &Outputs[]); bool training(int handle); bool classify(int handle); bool classify(int handle,int offset); bool classify(int handle,double &iput[]); void deinitSVMachine(void); #import //--- The number of inputs we will be using for the svm int N_Inputs=7; //+------------------------------------------------------------------+ //| Expert initialization function                                   | //+------------------------------------------------------------------+ int OnInit()  {   double inputs[];           //empty double array to be used for creating training inputs   bool   outputs[];          //empty bool array to be used for creating training inputs   int N_TrainingPoints=5000; //defines the number of training samples to be generated   int N_TestPoints=5000     //defines the number of samples to used when testing   genTrainingData(inputs,outputs,N_TrainingPoints); //Generates the inputs and outputs to be used for training the svm   int handle1=initSVMachine();             //initializes a new support vector machine and returns a handle   setInputs(handle1,inputs,7);             //passes the inputs (without errors) to the support vector machine   setOutputs(handle1,outputs);             //passes the outputs (without errors) to the support vector machine   setParameter(handle1,OP_TOLERANCE,0.01); //sets the error tolerance parameter to <5%   training(handle1);                       //trains the support vector machine using the inputs/outputs passed   insertRandomErrors(inputs,outputs,500);  //takes the original inputs/outputs generated and adds random errors to the data   int handle2=initSVMachine();             //initializes a new support vector machine and returns a handle   setInputs(handle2,inputs,7);             //passes the inputs (with errors) to the support vector machine   setOutputs(handle2,outputs);             //passes the outputs (with errors) to the support vector machine   setParameter(handle2,OP_TOLERANCE,0.01); //sets the error tolerance parameter to <5%   training(handle2);                       //trains the support vector machine using the inputs/outputs passed   double t1=testSVM(handle1,N_TestPoints); //tests the accuracy of the trained support vector machine and saves it to t1   double t2=testSVM(handle2,N_TestPoints); //tests the accuracy of the trained support vector machine and saves it to t2   Print("The SVM accuracy is ",NormalizeDouble(t1,2),"% (using training inputs/outputs without errors)");   Print("The SVM accuracy is ",NormalizeDouble(t2,2),"% (using training inputs/outputs with errors)");   deinitSVMachine(); //Cleans up all of the memory used in generating the SVM to avoid memory leakage   return(0);  }//+------------------------------------------------------------------+ //| Expert deinitialization function                                   | //+------------------------------------------------------------------+ void OnDeinit(const int reason)  {//--- No functions executed in OnDeinit()  }//+------------------------------------------------------------------+ //| Expert tick function                                             | //+------------------------------------------------------------------+ void OnTick()  {//--- No functions executed in OnTick()     }//+------------------------------------------------------------------+ //| This function takes the observation properties of the observed //| animal and based on the critera we have chosen, returns //| true/false whether it is a schnick //+------------------------------------------------------------------+ bool isItASchnick(double height,double weight,double N_legs,double N_eyes,double L_arm,double av_speed,double f_call)  {   if(height   < 1000  || height   > 1100)  return(false); //If the height is outside the parameters > return(false)   if(weight   < 40    || weight   > 50)    return(false); //If the weight is outside the parameters > return(false)   if(N_legs   < 8     || N_legs   > 10)    return(false); //If the N_Legs is outside the parameters > return(false)   if(N_eyes   < 3     || N_eyes   > 4)     return(false); //If the N_eyes is outside the parameters > return(false)   if(L_arm    < 400   || L_arm    > 450)   return(false); //If the L_arm  is outside the parameters > return(false)   if(av_speed < 2     || av_speed > 2.5)   return(false); //If the av_speed is outside the parameters > return(false)   if(f_call   < 11000 || f_call   > 15000) return(false); //If the f_call is outside the parameters > return(false)   return(true);                                           //Otherwise > return(true)  }//+------------------------------------------------------------------+ //| This function takes an empty double array and empty boolean array //| and generates the inputs/outputs to be used for training the SVM //+------------------------------------------------------------------+ void genTrainingData(double &inputs[],bool &outputs[],int N)  {   double in[];                    //creates an empty double array to be used                                   //for temporarily storing the inputs generated   ArrayResize(in,N_Inputs);       //resize the in[] array to N_Inputs   ArrayResize(inputs,N*N_Inputs); //resize the inputs[] array to have a size of N*N_Inputs    ArrayResize(outputs,N);         //resize the outputs[] array to have a size of N    for(int i=0;i<N;i++)     {      in[0]=    randBetween(980,1120);    //Random input generated for height      in[1]=    randBetween(38,52);       //Random input generated for weight      in[2]=    randBetween(7,11);        //Random input generated for N_legs      in[3]=    randBetween(3,4.2);       //Random input generated for N_eyes      in[4]=    randBetween(380,450);     //Random input generated for L_arms      in[5]=    randBetween(2,2.6);       //Random input generated for av_speed      in[6]=    randBetween(10500,15500); //Random input generated for f_call      //--- copy the new random inputs generated into the training input array      ArrayCopy(inputs,in,i*N_Inputs,0,N_Inputs);      //--- assess the random inputs and determine if it is a schnick      outputs[i]=isItASchnick(in[0],in[1],in[2],in[3],in[4],in[5],in[6]);     }  }//+------------------------------------------------------------------+ //| This function takes the handle for the trained SVM and tests how //| successful it is at classifying new random inputs //+------------------------------------------------------------------+ double testSVM(int handle,int N)  {   double in[];   int atrue=0;   int afalse=0;   int N_correct=0;   bool Predicted_Output;   bool Actual_Output;   ArrayResize(in,N_Inputs);   for(int i=0;i<N;i++)     {      in[0]=    randBetween(980,1120);    //Random input generated for height      in[1]=    randBetween(38,52);       //Random input generated for weight      in[2]=    randBetween(7,11);        //Random input generated for N_legs      in[3]=    randBetween(3,4.2);       //Random input generated for N_eyes      in[4]=    randBetween(380,450);     //Random input generated for L_arms      in[5]=    randBetween(2,2.6);       //Random input generated for av_speed      in[6]=    randBetween(10500,15500); //Random input generated for f_call      //--- uses the isItASchnick fcn to determine the actual desired output      Actual_Output=isItASchnick(in[0],in[1],in[2],in[3],in[4],in[5],in[6]);      //--- uses the trained SVM to return the prediced output.      Predicted_Output=classify(handle,in);      if(Actual_Output==Predicted_Output)        {         N_correct++; //This statement keeps count of the number of times the predicted output is correct.        }     }//--- returns the accuracy of the trained SVM as a percentage   return(100*((double)N_correct/(double)N));  }//+------------------------------------------------------------------+ //| This function takes the correct training inputs and outputs //| generated and inserts N random errors into the data //+------------------------------------------------------------------+ void insertRandomErrors(double &inputs[],bool &outputs[],int N)  {   int nTrainingPoints=ArraySize(outputs); //calculates the number of training points   int index;                              //creates new integer 'index'   bool randomOutput;                      //creates new bool 'randomOutput'   double in[];                            //creates an empty double array to be used                                           //for temporarily storing the inputs generated   ArrayResize(in,N_Inputs);               //resize the in[] array to N_Inputs   for(int i=0;i<N;i++)     {      in[0]=    randBetween(980,1120);    //Random input generated for height      in[1]=    randBetween(38,52);       //Random input generated for weight      in[2]=    randBetween(7,11);        //Random input generated for N_legs      in[3]=    randBetween(3,4.2);       //Random input generated for N_eyes      in[4]=    randBetween(380,450);     //Random input generated for L_arms      in[5]=    randBetween(2,2.6);       //Random input generated for av_speed      in[6]=    randBetween(10500,15500); //Random input generated for f_call      //--- randomly chooses one of the training inputs to insert an error      index=(int)MathRound(randBetween(0,nTrainingPoints-1));      //--- generates a random boolean output to be used to create error      if(randBetween(0,1)>0.5) randomOutput=true;      else                     randomOutput=false;      //--- copy the new random inputs generated into the training input array      ArrayCopy(inputs,in,index*N_Inputs,0,N_Inputs);      //--- copy the new random output generated into the training output array      outputs[index]=randomOutput;     }  }//+------------------------------------------------------------------+ //| This function is used to create a random value between t1 and t2 //+------------------------------------------------------------------+ double randBetween(double t1,double t2)  {   return((t2-t1)*((double)MathRand()/(double)32767)+t1);  }//+------------------------------------------------------------------+

2012.12.14
ระบบการเทรด Exp_MACD_Xtr สำหรับ MetaTrader 5 ที่คุณต้องรู้
MetaTrader5
ระบบการเทรด Exp_MACD_Xtr สำหรับ MetaTrader 5 ที่คุณต้องรู้

วันนี้เรามาพูดถึงระบบการเทรดที่ชื่อว่า MACD_Xtr ซึ่งเป็นเครื่องมือที่ช่วยให้คุณสามารถทำการซื้อขายได้อย่างมีประสิทธิภาพ โดยสัญญาณการเปิดการเทรดจะเกิดขึ้นเมื่อแท่งเทียนปิดลงที่มีสีแดงหรือเขียว การออกจากการเทรดสามารถทำได้ผ่านคำสั่งที่รอดำเนินการ หรือเมื่อแท่งเทียนเปลี่ยนสี ให้คุณวางไฟล์ MACD_Xtr.ex5 ลงในโฟลเดอร์ terminal_data_folder\MQL5\Indicators ในการทดสอบที่แสดงด้านล่างนี้เราได้ใช้พารามิเตอร์เริ่มต้นของ Expert Advisor โดยไม่ได้ใช้ Stop Loss และ Take Profit ในระหว่างการทดสอบ รูปที่ 1 ประวัติการทำธุรกรรมในกราฟ   ผลการทดสอบในปี 2011 สำหรับ USDCHF H4: รูปที่ 2 กราฟผลการทดสอบ

2012.12.13
Exp_TrendValue: ระบบเทรดสำหรับ MetaTrader 5 ที่คุณไม่ควรพลาด
MetaTrader5
Exp_TrendValue: ระบบเทรดสำหรับ MetaTrader 5 ที่คุณไม่ควรพลาด

สวัสดีครับเพื่อนๆ เทรดเดอร์ทุกคน! วันนี้เรามาพูดถึงระบบการเทรดที่ใช้สัญญาณจาก Indicator TrendValue ที่จะช่วยให้การเทรดของคุณมีประสิทธิภาพมากขึ้นนะครับ ระบบนี้จะสร้างสัญญาณการทำรายการเมื่อสิ้นสุดแท่งเทียน โดยจะมีเพชรสีที่ตรงกับแนวโน้มปรากฏขึ้น ซึ่งทำให้คุณสามารถตัดสินใจได้ว่าจะเข้าทำรายการหรือไม่ สำหรับการใช้งาน TrendValue.ex5 คุณต้องนำไฟล์ที่คอมไพล์แล้วไปวางในโฟลเดอร์ terminal_data_folder\MQL5\Indicators นะครับ ในการทดสอบต่างๆ ที่แสดงด้านล่างนี้เราได้ใช้พารามิเตอร์ค่าเริ่มต้นของ Expert Advisor โดยไม่ได้ใช้ Stop Loss และ Take Profit ในการทดสอบนะครับ รูปที่ 1 ประวัติการทำรายการในกราฟ ผลการทดสอบในปี 2011 สำหรับคู่เงิน USDCHF ใน Timeframe H4 มีดังนี้: รูปที่ 2 กราฟผลการทดสอบ

2012.12.13
ระบบเทรด MA_Rounding_Channel สำหรับ MetaTrader 5
MetaTrader5
ระบบเทรด MA_Rounding_Channel สำหรับ MetaTrader 5

สวัสดีครับเพื่อนเทรดเดอร์ทุกคน! วันนี้เราจะมาพูดถึง ระบบเทรด MA_Rounding_Channel ที่เป็นตัวช่วยให้คุณทำกำไรได้ง่ายขึ้นในตลาด Forex โดยใช้ MA_Rounding_Channel เป็นตัวชี้วัดในการตัดสินใจซื้อขาย ระบบนี้จะส่งสัญญาณให้เราทำการซื้อขายเมื่อราคาทะลุขอบบนหรือล่างของช่องสัญญาณของตัวชี้วัด โดยจะเกิดสัญญาณที่บาร์ปิดเท่านั้น ในการใช้งานเพียงแค่ให้คุณนำไฟล์ MA_Rounding_Channel.ex5 ไปวางไว้ในโฟลเดอร์ terminal_data_folder\MQL5\Indicators ในการทดสอบที่เรานำมาให้ดูด้านล่างนี้ เราใช้พารามิเตอร์เริ่มต้นของ Expert Advisor โดยที่ไม่ได้ตั้งค่า Stop Loss และ Take Profit รูปที่ 1 ประวัติการทำธุรกรรมในกราฟ เรามาดูผลการทดสอบในปี 2011 สำหรับ UDSCHF H4 กันดีกว่า: รูปที่ 2 กราฟผลการทดสอบ

2012.12.13
ระบบเทรด Exp_ZPF สำหรับ MetaTrader 5 ที่คุณไม่ควรพลาด
MetaTrader5
ระบบเทรด Exp_ZPF สำหรับ MetaTrader 5 ที่คุณไม่ควรพลาด

วันนี้เราจะมาพูดถึง ระบบเทรด Zero Point Force (ZPF) ที่ใช้ตัวชี้วัดที่น่าสนใจนี้กันนะครับ ระบบนี้จะช่วยให้คุณทำการซื้อขายได้อย่างมีประสิทธิภาพมากขึ้น โดยจะมีสัญญาณให้ทำการเทรดเมื่อสีของเมฆในตัวชี้วัดเปลี่ยนแปลงในขณะปิดแท่งเทียน เพื่อเริ่มต้นใช้งาน ให้คุณนำไฟล์ ZPF.ex5 ที่ได้ทำการคอมไพล์ไว้ไปวางในโฟลเดอร์ terminal_data_folder\MQL5\Indicators ในการทดสอบที่เราจะพูดถึงในบทความนี้ เราได้ใช้พารามิเตอร์เริ่มต้นของ Expert Advisor โดยไม่ได้ตั้งค่า Stop Loss และ Take Profit ในระหว่างการทดสอบครับ รูปที่ 1 ประวัติการทำธุรกรรมในกราฟ มาดูกันที่ผลการทดสอบในปี 2011 สำหรับคู่เงิน XAUUSD ในกราฟ H4: รูปที่ 2 กราฟผลการทดสอบ

2012.12.12
Exp_Kolier_SuperTrend: ระบบเทรดอัจฉริยะสำหรับ MetaTrader 5
MetaTrader5
Exp_Kolier_SuperTrend: ระบบเทรดอัจฉริยะสำหรับ MetaTrader 5

สวัสดีเพื่อนๆ นักลงทุนทุกท่าน! วันนี้เราจะมาพูดถึง Exp_Kolier_SuperTrend ระบบเทรดอัจฉริยะที่ออกแบบมาเพื่อใช้งานกับ MetaTrader 5 ซึ่งใช้การข้ามของค่าเฉลี่ยเคลื่อนที่จาก Kolier_SuperTrend เป็นสัญญาณในการเปิดออเดอร์ สัญญาณในการทำการซื้อขายจะเกิดขึ้นเมื่อแท่งเทียนปิดและมีกรอบสี่เหลี่ยมในสีที่ตรงกันปรากฏขึ้น ให้คุณนำไฟล์ Kolier_SuperTrend.ex5 ไปวางในโฟลเดอร์ terminal_data_folder\MQL5\Indicators ของคุณ ในการทดสอบที่แสดงด้านล่าง เราได้ใช้พารามิเตอร์เริ่มต้นของระบบเทรดนี้ โดยไม่ได้ใช้ Stop Loss และ Take Profit ในระหว่างการทดสอบ รูปที่ 1. ประวัติการทำรายการบนกราฟ ผลการทดสอบในปี 2011 สำหรับคู่เงิน AUDUSD ในกรอบเวลา H4: รูปที่ 2. กราฟผลการทดสอบ

2012.12.12
Exp_RMACD: ระบบการเทรดอัจฉริยะบน MetaTrader 5
MetaTrader5
Exp_RMACD: ระบบการเทรดอัจฉริยะบน MetaTrader 5

Exp_RMACD เป็น EA (Expert Advisor) ที่ใช้สัญญาณจาก ColorRMACD histogram ในการตัดสินใจทำธุรกรรม โดยจะมีสัญญาณสำหรับการเปิดคำสั่งเมื่อปิดแท่งเทียน และเกิดการทะลุระดับศูนย์ของ RMACD histogram หรือมีการเปลี่ยนทิศทางของ histogram หรือสัญญาณ และมีการทะลุใน histogram ของสัญญาณ (ขึ้นอยู่กับตัวเลือกที่เลือกในโหมดของพารามิเตอร์การตั้งค่า) ให้วางไฟล์ ColorRMACD.ex5 และ TRVI.ex5 ในโฟลเดอร์ terminal_data_folder\MQL5\Indicators ในการทดสอบที่แสดงด้านล่างนี้ ได้ใช้พารามิเตอร์การตั้งค่าเริ่มต้นของ Expert Advisor โดยไม่ได้ใช้ Stop Loss และ Take Profit ในระหว่างการทดสอบ Fig. 1. ประวัติการเทรดในกราฟ ผลการทดสอบสำหรับปี 2011 ที่คู่เงิน EURJPY H4: Fig. 2. กราฟผลการทดสอบ

2012.12.12
EA_MALR: ระบบเทรดอัจฉริยะสำหรับ MetaTrader 5
MetaTrader5
EA_MALR: ระบบเทรดอัจฉริยะสำหรับ MetaTrader 5

EA_MALR เป็นที่ปรึกษาผู้เชี่ยวชาญ (Expert Advisor) ที่พัฒนาขึ้นจากดัชนี MALR ซึ่งมีฟังก์ชันที่น่าสนใจมากมาย เช่น Trailing Stop, การเพิ่มล็อต, การเฉลี่ย และการกลับตำแหน่ง EA_MALR ใช้ดัชนี MALR ในการทำงาน โดยจะเปิดการขายเมื่อราคาตัดผ่านเส้น MALRHH (เส้นด้านบนสุด) และเปิดการซื้อเมื่อราคาตัดผ่านเส้น MALRLL (เส้นด้านล่างสุด) ฟังก์ชันที่รวมอยู่ใน EA_MALR ได้แก่: การเฉลี่ยตำแหน่งเมื่อมีสัญญาณใหม่ การกลับตำแหน่งเมื่อสัญญาณเปลี่ยนเป็นตรงกันข้าม Trailing Stop พร้อมการตั้งค่าเพิ่มเติม การเพิ่มล็อตตามการลดทุนที่ตั้งไว้ ผลการทดสอบตั้งแต่ปี 2000 ที่คู่เงิน EURUSD: ล็อตเริ่มต้น 0.10, เงินฝากเริ่มต้น 10,000$, เลเวอเรจ 1:500, MetaQuotes-Demo. กราฟด้านล่างแสดงให้เห็นถึงการเพิ่มล็อตและไม่เพิ่มล็อต: การเฉลี่ยและการกลับตำแหน่งไม่ได้ถูกใช้ (ใช้เพียง Stop Loss/Take Profit) ฟังก์ชันการเฉลี่ยถูกเปิดใช้งาน (ฟังก์ชันการกลับตำแหน่งถูกปิด) ฟังก์ชันการกลับตำแหน่งถูกเปิดใช้งาน (ฟังก์ชันการเฉลี่ยถูกปิด) ทั้งฟังก์ชันการกลับตำแหน่งและการเฉลี่ยถูกเปิดใช้งาน EA นี้ได้รับการป้องกันจากการสูญหายของข้อมูลในกรณีที่มีการตัดการเชื่อมต่อ, ข้อผิดพลาดในเครือข่าย และการรีสตาร์ท EA (terminal) การตั้งค่าหลักของ EA (เมื่อค่าเป็นศูนย์จะไม่ถูกใช้): sl/tp - ตั้งค่าหลังจากเปิดตำแหน่ง N_modify_sltp - จำนวนครั้งในการติดตั้ง Stop Loss/Take Profit ในการซื้อที่ไม่สำเร็จ use_Averaging - เปิดใช้งานการเฉลี่ยในทุนที่ตั้งไว้ (loss_forAveraging) เป็นจุด loss_forAveraging - จำนวนจุดในขาดทุนจากราคาที่เปิดล่าสุด (การเฉลี่ยล่าสุด) Position_overturn - การกลับตำแหน่งเมื่อสัญญาณในดัชนีเปลี่ยนเป็นตรงกันข้าม use_increase - เพิ่มล็อตตามการลดทุนที่ตั้งไว้ (Max_drawdown) เมื่อต้องการเปิดและเฉลี่ยตำแหน่ง Trail_StopLoss - เปิดใช้งาน Trailing Stop ในจุด (trail) Activate_by_profit - เปิดใช้งาน Trailing Stop เมื่อมีกำไรในจุด (profit) จากราคาเปิด

2012.12.12
Exp_MAMA: ระบบเทรดอัจฉริยะสำหรับ MetaTrader 5
MetaTrader5
Exp_MAMA: ระบบเทรดอัจฉริยะสำหรับ MetaTrader 5

สวัสดีครับเพื่อนนักเทรดทุกท่าน! วันนี้เรามาพูดถึง Exp_MAMA กันครับ ซึ่งเป็น ระบบเทรด ที่ช่วยให้เราเปิดคำสั่งซื้อขายได้อย่างง่ายดาย โดยการใช้การข้ามกันของค่าเฉลี่ยเคลื่อนที่ (Moving Averages) จาก MAMA อินดิเคเตอร์ สัญญาณในการเปิดเทรดจะเกิดขึ้นเมื่อแท่งเทียนปิดตัวลงและมีการข้ามกันของค่าเฉลี่ยเคลื่อนที่ของอินดิเคเตอร์นี้ ให้คุณนำไฟล์ MAMA_Optim.ex5 ไปวางในโฟลเดอร์ terminal_data_folder\MQL5\Indicators ของคุณนะครับ ในระหว่างการทดสอบที่แสดงด้านล่างนี้ เราใช้พารามิเตอร์เริ่มต้นของ ระบบเทรด โดยไม่ได้ใช้ Stop Loss และ Take Profit ครับ Fig. 1. ประวัติการเทรดในกราฟ ผลการทดสอบในปี 2011 สำหรับสกุลเงิน USDCHF ที่กรอบเวลา H4: Fig. 2. กราฟผลการทดสอบ

2012.12.12
ระบบเทรด ColorX2MA-Parabolic สำหรับ MetaTrader 5
MetaTrader5
ระบบเทรด ColorX2MA-Parabolic สำหรับ MetaTrader 5

วันนี้เราจะมาพูดถึง ระบบเทรด ColorX2MA-Parabolic ที่ใช้สำหรับ MetaTrader 5 ซึ่งเป็นหนึ่งในเครื่องมือที่ช่วยให้เราเทรดได้ง่ายขึ้น โดยระบบนี้จะใช้สัญญาณจาก Parabolic ที่ถูกปรับแต่งให้เรียบง่าย และค่าของ X2MA Moving Average เป็นข้อมูลในการตัดสินใจเปิดออเดอร์ เมื่อไหร่ที่เราเห็นจุดสีใหญ่ๆ ปรากฏขึ้นที่การปิดของแท่ง เทรดเดอร์จะได้รับสัญญาณให้ทำการซื้อหรือขายได้เลย คุณสามารถนำไฟล์ ColorX2MA-Parabolic.ex5 ไปวางได้ที่โฟลเดอร์ terminal_data_folder\MQL5\Indicators เพื่อเริ่มใช้งานได้ทันที ในระหว่างการทดสอบที่เราทำมา ใช้พารามิเตอร์เริ่มต้นของ Expert Advisor โดยไม่มีการตั้งค่า Stop Loss และ Take Profit Fig. 1. ประวัติการเทรดบนกราฟ ผลการทดสอบในปี 2011 สำหรับคู่เงิน USDCHF ที่กรอบเวลา H4 มีดังนี้: Fig. 2. กราฟผลการทดสอบ

2012.12.12
EA Exp_AdaptiveRenko: ระบบเทรดที่คุณไม่ควรพลาดใน MetaTrader 5
MetaTrader5
EA Exp_AdaptiveRenko: ระบบเทรดที่คุณไม่ควรพลาดใน MetaTrader 5

สวัสดีครับเพื่อนนักเทรดทุกคน! วันนี้เราจะมาพูดถึง Exp_AdaptiveRenko ซึ่งเป็น EA (Expert Advisor) ที่พัฒนาขึ้นจากการวิเคราะห์ของ AdaptiveRenko อินดิเคเตอร์กันครับ EA ตัวนี้จะสร้างสัญญาณให้เราเมื่อสิ้นสุดแท่งเทียน ถ้าฮิสโตแกรมเปลี่ยนทิศทาง ถือว่าเป็นสัญญาณให้เราเข้าทำการเทรดได้เลย เพื่อเริ่มต้นใช้งาน ให้คุณนำไฟล์ AdaptiveRenko.ex5 ไปวางในโฟลเดอร์ terminal_data_folder\MQL5\Indicators ของโปรแกรม MetaTrader 5 นะครับ ในบททดสอบที่เราได้ทำการจัดเตรียมไว้ด้านล่างนี้ ใช้พารามิเตอร์ค่าเริ่มต้นของ EA โดยไม่ได้ตั้งค่า Stop Loss และ Take Profit ในระหว่างการทดสอบ Fig. 1. ประวัติการเทรดบนกราฟ มาดูผลการทดสอบในปี 2011 บนคู่เงิน EURAUD ที่กรอบเวลา H4 กันครับ:   Fig. 2. แผนภูมิผลการทดสอบ

2012.12.12
EA Exp_JBrainSig1_UltraRSI: ระบบเทรดอัจฉริยะสำหรับ MetaTrader 5
MetaTrader5
EA Exp_JBrainSig1_UltraRSI: ระบบเทรดอัจฉริยะสำหรับ MetaTrader 5

EA Exp_JBrainSig1_UltraRSI เป็นระบบเทรดที่ใช้ค่าจาก JBrainTrend1Sig และ UltraRSI เพื่อวิเคราะห์สภาพตลาดให้เราทราบถึงโอกาสในการเทรด สัญญาณในการเปิดคำสั่งซื้อหรือขายจะเกิดขึ้นเมื่อแท่งเทียนปิด โดยจะมีสัญญาณจาก JBrainTrend1Sig และสีของเมฆจาก UltraRSI ต้องตรงกัน หากสีของเมฆจาก UltraRSI เปลี่ยนแปลงไปพร้อมกับสัญญาณล่าสุดจาก JBrainTrend1Sig ก็จะถือเป็นสัญญาณการเทรดในขณะนั้น ระบบนี้จะช่วยให้เรากรองสัญญาณจากอินดิเคเตอร์ทั้งสองนี้ได้อย่างมีประสิทธิภาพ โดยการเลือกโหมด Composition (กรองพร้อมกัน) ในพารามิเตอร์การตั้งค่าของ EA นอกจากนี้ยังมีค่าพารามิเตอร์อีกสองค่า ได้แก่ JBrainSig1Filter และ UltraRSIFilter ซึ่งออกแบบมาเพื่อให้หนึ่งในสองอินดิเคเตอร์ทำหน้าที่เป็นแหล่งสัญญาณการเทรด และอีกตัวเป็นการยืนยันสัญญาณ (สัญญาณกรอง) ให้วางไฟล์ที่คอมไพล์แล้ว JBrainTrend1Sig.ex4 และ UltraRSI.ex5 ในโฟลเดอร์ terminal_data_folder\MQL5\Indicators ในระหว่างการทดสอบที่แสดงด้านล่าง เราใช้พารามิเตอร์การตั้งค่าเริ่มต้นของ EA โดยไม่มีการใช้ Stop Loss และ Take Profit Fig. 1. ประวัติการทำธุรกรรมในกราฟ ผลการทดสอบสำหรับปี 2011 ที่ NZDUSD H4: Fig. 2. กราฟผลการทดสอบ

2012.12.12
Exp_Oracle EA สำหรับ MetaTrader 5: ระบบเทรดที่คุณไม่ควรพลาด
MetaTrader5
Exp_Oracle EA สำหรับ MetaTrader 5: ระบบเทรดที่คุณไม่ควรพลาด

Exp_Oracle คือ EA (Expert Advisor) ที่พัฒนาขึ้นจากสัญญาณที่ได้มาจาก Oracle ซึ่งเป็นอินดิเคเตอร์ที่มีการรีดรอว์ โดยสัญญาณในการทำธุรกรรมจะถูกสร้างขึ้นเมื่อแท่งเทียนปิดตัวลง หากเส้นสัญญาณของอินดิเคเตอร์ทะลุระดับศูนย์หรือลดทิศทาง และมีการตัดกันของเส้นสัญญาณกับอินดิเคเตอร์ (ขึ้นอยู่กับตัวเลือกที่เลือกในพารามิเตอร์อินพุตโหมด) ให้วางไฟล์ที่คอมไพล์ Oracle.ex5 ไว้ในโฟลเดอร์ terminal_data_folder\MQL5\Indicators ในระหว่างการทดสอบด้านล่างนี้ ได้ใช้งานพารามิเตอร์อินพุตเริ่มต้นของ Expert Advisor ซึ่งไม่มีการตั้งค่า Stop Loss และ Take Profit ควรทราบว่าอินดิเคเตอร์ Oracle มีการรีดรอว์ ดังนั้นกราฟที่ได้จากการทดสอบ Expert Advisor จะไม่ตรงกับธุรกรรมและการเปลี่ยนแปลงที่เกิดขึ้นบนเส้นของอินดิเคเตอร์! Fig. 1. ประวัติการทำธุรกรรมในกราฟ. ผลการทดสอบในปี 2011 ที่ UDSCHF H4: Fig. 2. กราฟผลการทดสอบ  

2012.12.12
ระบบการเทรด Exp_Candles_XSmoothed สำหรับ MetaTrader 5
MetaTrader5
ระบบการเทรด Exp_Candles_XSmoothed สำหรับ MetaTrader 5

สวัสดีครับเพื่อนเทรดเดอร์ทุกคน! วันนี้เราจะมาพูดถึงระบบการเทรดที่น่าสนใจโดยใช้ ตัวชี้วัด Candles_Smoothed ซึ่งเป็นเครื่องมือที่ช่วยให้เราสามารถทำการซื้อขายได้อย่างมีประสิทธิภาพมากขึ้น ระบบนี้จะสร้างสัญญาณการซื้อขายเมื่อแท่งเทียนปิด โดยจะพิจารณาว่าระดับที่แตกร้าวนั้นสูงกว่าหรือต่ำกว่าระดับสูงสุดหรือต่ำสุดของแท่งเทียนตามตัวชี้วัด เพื่อใช้งาน คุณต้องนำไฟล์ Candles_Smoothed.ex5 ไปวางในโฟลเดอร์ terminal_data_folder\MQL5\Indicators ของคุณ ในการทดสอบที่เราจะแบ่งปันในวันนี้ จะใช้พารามิเตอร์การตั้งค่าจาก Expert Advisor แบบเริ่มต้น โดยไม่ได้มีการกำหนด Stop Loss และ Take Profit ในระหว่างการทดสอบ รูปที่ 1. ประวัติการซื้อขายในกราฟ  สำหรับผลการทดสอบในปี 2011 ที่คู่เงิน USDCHF ในกรอบเวลา H4: รูปที่ 2. กราฟผลการทดสอบ

2012.12.12
รีวิว EA Exp_2MoHLC สำหรับ MetaTrader 5: การเทรดที่แม่นยำ
MetaTrader5
รีวิว EA Exp_2MoHLC สำหรับ MetaTrader 5: การเทรดที่แม่นยำ

สวัสดีเพื่อนๆ นักเทรดทุกคน! วันนี้เราจะมาพูดถึง Exp_2MoHLC ซึ่งเป็น EA ที่ใช้สัญญาณจาก เครื่องมือ 2MoHLC ในการช่วยในการเทรดของคุณกันนะครับ EA นี้จะสร้างสัญญาณเพื่อทำการซื้อขายเมื่อปิดแท่งแท่งราคา หากระดับศูนย์ถูกทำลาย หรือสีของคลาวด์เปลี่ยนแปลง หรือราคาคลาวด์ถูกทำลาย (ขึ้นอยู่กับค่าพารามิเตอร์ Mode ที่ตั้งไว้ใน EA) สำหรับการใช้งาน ให้คุณวางไฟล์ 2MoHLC_.ex5 ลงในโฟลเดอร์ terminal_data_folder\MQL5\Indicators นะครับ ในบททดสอบที่แสดงด้านล่างนี้ เราได้ใช้พารามิเตอร์เริ่มต้นของ EA โดยไม่ได้ตั้งค่า Stop Loss และ Take Profit ในการทดสอบ Fig. 1. ประวัติการซื้อขายในกราฟ ผลการทดสอบในปี 2011 สำหรับคู่เงิน USDCHF H4 มีดังนี้: Fig. 2. กราฟผลการทดสอบ

2012.12.12
แรก ก่อนหน้า 51 52 53 54 55 56 57 58 59 60 61 ถัดไป สุดท้าย