วันศุกร์ที่ 17 ตุลาคม พ.ศ. 2557

การทำ Backtest อย่างง่าย จากข้อมูล eFin Smart Portal Simulation ด้วย Excel #3

จากโพสต์ที่แล้วคุณจะได้ไฟล์ excel ที่มีข้อมูล simulation ตาม indicator ที่คุณเลือกมาหนึ่งไฟล์   ที่นี้ให้เปิดมันออกมา  คุณจะเห็นว่ามันประกอบไปด้วยข้อมูลเวลา,ราคาเปิด,ราคาสูงสุด,ราคาปิด,ราคาต่ำสุด,ปริมาณซื้อขาย และสัญญาณซื้อกับ สัญญาณขาย ในรูปของราคา   ให้สังเกตุชื่อของ 2 column สุดท้าย ที่เป็นราคาซื้อขายนะครับ   ชื่อนี้จะเปลี่ยนไปตาม indicator ที่เราทำการ simulate   จากตัวอย่างของผมจะเป็น SIM_EMAVBUY และ SIM_EMAVSELL

จากนั้นให้ทำการเลือกเซลล์ให้ครอบคลุมพื้นที่ข้อมูลทั้งหมด แล้วทำการ copy    จากตัวอย่างของผมเป็นข้อมูลรายวันย้อนหลัง 7 ปี ก็จะประมาณเกือบ 2,000 เรคคอร์ดได้




มาที่ไฟล์ Simple XL Backtester กัน   คลิกดูที่ sheet ชื่อ BACK END นะครับ    ที่นี้ผมขอให้คุณทำการ clear content ที่อยู่ในกรอบสีเขียว, กรอบสีฟ้าอ่อน และกรอบสีส้มอ่อน ออกก่อน   จากนั้นก็คลิกเลือกเซลล์แรกที่อยู่ใต้คำว่า IMPORTED DATA ตามรูปด้านล่าง  เพื่อ paste ข้อมูลที่ copy มาจากไฟล์ข้อมูล simulation ลงไป





เอาล่ะ ต่อไปเป็นขั้นตอนสำคัญ ซึ่งก็คือการตั้งเงื่อนไขในการกรองข้อมูลให้กับ Advanced Filter เพื่อเลือกเอาเฉพาะเรคคอร์ดที่เป็นสัญญาณซื้อขาย ส่งไปประมวลผลในตารางชื่อ TRADES ที่อยู่ทางซ้ายมือบน sheet เดียวกัน
ให้คุณเลือกเซลล์ทั้งหมดที่เป็นชื่อ column ของข้อมูลที่ import เข้ามา แล้วทำการ copy



แล้วเอาไป paste ลงบนเซลล์แรกที่อยู่ใต้คำว่า DATA FILTER CONDITION   พื้นที่ตารางตรงนี้จะใช้เพื่อกำหนดเงื่อนไขการกรองข้อมูล  โดยหลักการก็คือ ใส่เงื่อนไขลงไปใน column ที่ต้องการตรวจสอบ



เสร็จแล้วมาตั้งเงื่อนไขกัน   เงื่อนไขของเราก็คือ ให้เลือกเอาเฉพาะเรคคอร์ดที่ SIM_EMAVBUY มีข้อมูลหรือ เรคคอร์ดที่ SIM_EMAVSELL มีข้อมูลเท่านั้น    สิ่งที่ต้องทำก็คือ ให้พิมพ์ ">0" (ไม่ต้องใส่เครื่องหมาย""นะครับ) ลงไปในเซลล์บนแถวแรกใน column ที่ชื่อ SIM_EMAVBUY และ ในเซลล์บนแถวที่สองใน column ที่ชื่อ SIM_EMAVSELL ตามที่แสดงในรูปด้านล่าง



ที่นี่เราก็ต้องไปบอกเจ้า Advanced Filter ให้รู้ถึงว่าต้องมาเอาข้อมูลจากตรงไหน เอาเงื่อนไขจากตรงไหน ไปใช้ในการคัดกรอง รวมทั้งบอกมันด้วยว่ากรองเสร็จแล้วให้เอาข้อมูลไปไว้ที่ไหน   ให้ทำตามนี้นะครับ
คลิกที่เมนู Data แล้วเลือก Filter > Advanced Filter



บนหน้าต่าง Advanced Filter ใน Action ให้คลิกเลือก Copy to another location  แล้วมาคลิกที่ช่อง List range เพื่อกำหนดขอบเขตของตารางข้อมูลต้นทาง



เสร็จแล้วมาคลิกที่ช่อง Criteria range เพื่อกำหนดขอบเขตของตารางที่เป็นเงื่อนไข



สุดท้ายก็ให้มาคลิกที่ช่อง Copy to เพื่อกำหนดตำแหน่งปลายทางของข้อมูลที่กรองแล้วจะถูกนำไปไว้  ซึี่งเราจะให้มันไปอยู่ในตาราง TRADES โดยให้เลือกที่เซลล์แรกใต้คำว่า TRADES นั่นแหละ   จากนั้นให้คลิกที่ปุ่ม OK



ก็จะได้ผลตามนี้นะครับ



ผมลืมบอกไปเรื่องหนึ่งครับ คือผมทำการ Protect เซลล์ที่มีสูตรคำนวณไว้เพื่อป้องกันการเปลี่ยนแปลงโดยบังเอิญ   คุณสามารถ Unprotect มันได้โดยใช้ "1234" เป็น password นะครับ   โพสต์นี้ขอเพียงเท่านี้ก่อนนะครับ

ไม่มีความคิดเห็น:

แสดงความคิดเห็น