Wednesday 2 August 2017

วิธี การ backtest a ซื้อขาย ระบบ ใน excel


การใช้ Excel เพื่อย้อนกลับกลยุทธ์การซื้อขายการทดสอบวิธีการทดสอบย้อนกลับด้วย Excel Ive ทำจำนวนเงินที่ยุติธรรมของการทดสอบกลยุทธ์การซื้อขายกลับ Ive ใช้ภาษาโปรแกรมที่ซับซ้อนและขั้นตอนวิธีและ Ive ยังทำมันด้วยดินสอและกระดาษ คุณไม่จำเป็นต้องเป็นนักวิทยาศาสตร์จรวดหรือโปรแกรมเมอร์เพื่อทดสอบกลยุทธ์การซื้อขายจำนวนมาก หากคุณสามารถใช้งานโปรแกรมสเปรดชีตเช่น Excel ได้คุณสามารถทดสอบกลยุทธ์ได้หลายวิธี วัตถุประสงค์ของบทความนี้เพื่อแสดงวิธีย้อนกลับทดสอบกลยุทธ์การซื้อขายโดยใช้ Excel และแหล่งข้อมูลที่เปิดเผยต่อสาธารณะ นี้ไม่ควรค่าคุณมากขึ้นกว่าเวลาที่ใช้ในการทำแบบทดสอบ ก่อนที่คุณจะเริ่มทดสอบกลยุทธ์ใด ๆ คุณต้องมีชุดข้อมูล อย่างน้อยนี้เป็นชุดข้อมูลและราคา คุณสมจริงมากขึ้นคุณต้องเปิดใช้งาน datetime เปิดสูงต่ำราคาปิด คุณมักจะต้องใช้องค์ประกอบเวลาของชุดข้อมูลถ้าคุณกำลังทดสอบกลยุทธ์การซื้อขายในวันที่ ถ้าคุณต้องการทำงานพร้อมและเรียนรู้วิธีกลับการทดสอบกับ Excel ในขณะที่คุณกำลังอ่านข้อความนี้จากนั้นทำตามขั้นตอนที่ฉันสรุปในแต่ละส่วน เราจำเป็นต้องได้รับข้อมูลสำหรับสัญลักษณ์ที่เรากำลังจะกลับการทดสอบ ไปที่: Yahoo Finance ในช่อง Enter Symbol (s) ให้ป้อน: IBM และคลิก GO ภายใต้ Quotes ที่ด้านซ้ายมือคลิก History Prices และป้อนช่วงวันที่ที่คุณต้องการ ฉันเลือกตั้งแต่ 1 มกราคม 2547 ถึง 31 ธันวาคม 2004 เลื่อนลงไปที่ด้านล่างของหน้าและคลิกดาวน์โหลดลงในสเปรดชีตบันทึกไฟล์ด้วยชื่อ (เช่น ibm. csv) และไปยังที่ที่คุณสามารถค้นหาได้ในภายหลัง การเตรียมข้อมูลเปิดไฟล์ (ที่คุณดาวน์โหลดมาด้านบน) โดยใช้ Excel เนื่องจากลักษณะพลวัตของอินเทอร์เน็ตคำแนะนำที่คุณอ่านข้างต้นและไฟล์ที่คุณเปิดอาจมีการเปลี่ยนแปลงเมื่อถึงเวลาที่คุณอ่านข้อความนี้ เมื่อดาวน์โหลดไฟล์นี้ไม่กี่บรรทัดแรกนี้มีลักษณะดังนี้: ขณะนี้คุณสามารถลบคอลัมน์ที่คุณไม่ต้องการใช้ สำหรับการทดสอบที่ Im เกี่ยวกับการทำฉันจะใช้ค่าวันที่เปิดและปิดดังนั้นฉันได้ลบ High, Low, Volume และ Adj ปิด. ฉันยังจัดเรียงข้อมูลเพื่อให้วันที่เก่าแก่ที่สุดเป็นอันดับแรกและวันที่ล่าสุดอยู่ที่ด้านล่าง ใช้ตัวเลือกเมนูการจัดเรียงข้อมูล - gt เพื่อทำสิ่งนี้ แทนการทดสอบกลยุทธ์ต่อ se ฉันจะพยายามหาวันในสัปดาห์ซึ่งให้ผลตอบแทนที่ดีที่สุดถ้าคุณทำตามซื้อเปิดและขายกลยุทธ์ปิด โปรดจำไว้ว่าบทความนี้จะแนะนำคุณเกี่ยวกับวิธีการใช้ Excel เพื่อย้อนกลับกลยุทธ์การทดสอบ เราอาจจะพัฒนาต่อไปเรื่อย ๆ นี่คือไฟล์ ibm. zip ซึ่งเก็บสเปรดชีตด้วยข้อมูลและสูตรสำหรับการทดสอบนี้ ข้อมูลของฉันอยู่ในคอลัมน์ A ถึง C (วันที่เปิดปิด) ในคอลัมน์ D ถึง H ฉันมีสูตรวางตำแหน่งเพื่อกำหนดผลตอบแทนในวันใดวันหนึ่ง การป้อนสูตรส่วนที่หากิน (เว้นแต่คุณจะเป็นผู้เชี่ยวชาญของ Excel) กำลังดำเนินการตามสูตรที่จะใช้ นี่เป็นเพียงเรื่องของการปฏิบัติและยิ่งคุณฝึกสูตรอื่น ๆ ที่คุณค้นพบมากเท่าใดและคุณจะมีความยืดหยุ่นมากขึ้นในการทดสอบของคุณ ถ้าคุณได้ดาวน์โหลดสเปรดชีตแล้วลองดูสูตรในเซลล์ D2 ดูเหมือนว่า: สูตรนี้จะถูกคัดลอกไปยังเซลล์อื่น ๆ ทั้งหมดในคอลัมน์ D ถึง H (ยกเว้นแถวแรก) และไม่จำเป็นต้องปรับเปลี่ยนเมื่อคัดลอกแล้ว อธิบายสั้น ๆ เกี่ยวกับสูตร สูตร IF มีเงื่อนไขเป็นความจริงและเป็นเท็จ เงื่อนไขคือ: ถ้าวันในสัปดาห์ (แปลงเป็นตัวเลขตั้งแต่ 1 ถึง 5 วันตรงกับวันจันทร์ถึงวันศุกร์) เป็นวันเดียวกับวันในสัปดาห์แรกของแถวแรกของคอลัมน์นี้ (D1) จากนั้น ส่วนที่แท้จริงของคำแถลง (C2-B2) ช่วยให้เราเห็นคุณค่าของ Close-Open นี่แสดงว่าเราซื้อ Open และขาย Close และนี่เป็นกำไรของเรา ส่วนที่เป็นเท็จของคำสั่งคือคู่คำพูดคู่ () ซึ่งไม่ได้ใส่อะไรลงในเซลล์หากไม่ได้จับคู่วันในสัปดาห์ เครื่องหมายทางด้านซ้ายของตัวอักษรคอลัมน์หรือหมายเลขแถวล็อกคอลัมน์หรือแถวเพื่อไม่ให้มีการเปลี่ยนแปลงส่วนของการอ้างอิงเซลล์ ดังนั้นในตัวอย่างของเราเมื่อสูตรถูกคัดลอกการอ้างอิงไปยังเซลล์วันที่ A2 จะเปลี่ยนหมายเลขแถวถ้าคัดลอกไปยังแถวใหม่ แต่คอลัมน์จะยังคงอยู่ที่คอลัมน์ A คุณสามารถทำสูตรและสร้างกฎที่มีประสิทธิภาพล้ำยุค และสำนวน ผลลัพธ์ที่ด้านล่างของคอลัมน์วันทำงานฉันได้วางฟังก์ชันสรุปแล้ว สะดุดตาเฉลี่ยและรวมฟังก์ชัน สิ่งเหล่านี้แสดงให้เราเห็นว่าในช่วงปี 2547 วันที่มีผลกำไรสูงสุดในการใช้กลยุทธ์นี้คือวันอังคารและตามด้วยวันพุธ เมื่อฉันทดสอบกลยุทธ์ Expiry Fridays - Bullish หรือ Bearish และเขียนบทความที่ฉันใช้วิธีการที่คล้ายกันมากกับสเปรดชีตและสูตรเช่นนี้ วัตถุประสงค์ของการทดสอบนั้นคือเพื่อดูว่าวันหมดอายุของวันศุกร์โดยทั่วไปรั้นหรือหยาบคาย ลองดูสิ. ดาวน์โหลดข้อมูลบางส่วนจาก Yahoo Finance โหลดลงใน Excel และลองใช้สูตรและดูสิ่งที่คุณสามารถเกิดขึ้นได้ โพสต์คำถามของคุณในฟอรัม โชคดีและการล่าสัตว์กลยุทธ์ที่ทำกำไรทำไมต้องใช้ Excel เพื่อทำกลยุทธ์การซื้อขายด้านกลยุทธ์การเรียนรู้เรียนรู้เพื่อการค้าใช้เวลาและความอดทนมาก ในบทความนี้ผมจะพูดถึงเหตุผลว่าทำไมการใช้ Excel เป็นกลยุทธ์การซื้อขายแบ็คกร็ตจึงเป็นสิ่งที่ดี กลยุทธ์การซื้อขายที่ดีอะไรเป็นส่วนสำคัญในการซื้อขายทำกำไรได้ใช้กลยุทธ์การซื้อขายที่ดี กลยุทธ์ประเภทต่างๆมีประสิทธิภาพดีขึ้นในสภาวะตลาดที่ต่างกันและอาจมีประโยชน์มากกว่าหนึ่งกลยุทธ์ กลยุทธ์การซื้อขายที่ดีก็เหมือนชุดสูทที่เหมาะสม ต้องรู้สึกดีและดูดี กลยุทธ์การซื้อขายต้องสอดคล้องกับบุคลิกและวิถีการดำเนินชีวิตของผู้ค้าและการทำกำไร หากกลยุทธ์การค้าไม่พอดีกับผู้ค้าอาจจะล้มเหลว นักลงทุนที่มีความรอบคอบอาจต้องการพัฒนากลยุทธ์ด้านผู้ป่วยที่ช้าซึ่งใช้ผลกำไรมหาศาลจากการย้ายตลาดที่มีขนาดใหญ่ ผู้ค้าที่ให้ความสนใจกับอะดรีนาลีนและอยากจะเข้ามาในตลาดอย่างต่อเนื่องควรจะซื้อขายความเป็นไปได้สูงในระยะเวลาอันสั้น สิ่งสำคัญอย่างเท่าเทียมกันคือเวลาและความสามารถในการทำกลยุทธ์ทางการค้าอย่างถูกต้อง คนที่ทำงาน 40 ชั่วโมงต่อสัปดาห์ไม่สามารถซื้อขายกลยุทธ์ที่ต้องให้ความสนใจอย่างสม่ำเสมอ นอกจากนี้ยังอาจเป็นเรื่องยากที่จะมุ่งเน้นการซื้อขายจากบ้านเมื่อบ้านเต็มไปด้วยเด็กที่มีเสียงดัง ผู้ค้าต้องเป็นจริงเกี่ยวกับเวลาและพลังงานที่พวกเขาสามารถอุทิศให้กับกลยุทธ์ได้ การพัฒนากลยุทธ์การซื้อขายที่ดีวิธีเดียวในการพัฒนายุทธศาสตร์การค้าที่เหมาะกับคุณคือการทดลองใช้และข้อผิดพลาด จนกว่าคุณจะมีการซื้อขายกลยุทธ์อยู่ในตลาดคุณจะไม่ทราบว่าจะเหมาะสมกับคุณหรือไม่ มีวิธีเพิ่มความเร็วในการพัฒนายุทธศาสตร์ของคุณเอง ทบทวนประวัติการซื้อขายของคุณตลาดการเงินมีวิธีสอนบทเรียนที่เราต้องเรียนรู้ การศึกษาธุรกิจการค้าที่ผ่านมาของคุณมีประโยชน์มากสำหรับการปรับแนวทางในการซื้อขาย ดูวิธีที่คุณรับมือกับสภาวะที่ยากลำบาก วิธีการที่คุณยึดมั่นในแผนของคุณและผลกำไรหรือขาดทุนที่คุณจะออกจากตลาดแต่ละครั้ง คุณสามารถมีกำไรมากขึ้นจากธุรกิจการค้าที่ชนะและลดจำนวนผู้แพ้ของคุณก่อนหน้า Backtesting สำหรับการนำเสนอวิธีการใหม่ ๆ และเพื่อรับมือกับสภาวะตลาดที่แตกต่างการทำ backtesting ถือเป็นสิ่งสำคัญอย่างยิ่ง Backtesting ใช้ข้อมูลราคาย้อนหลังเพื่อดูว่ากลยุทธ์การซื้อขายจะดำเนินไปได้อย่างไร การทำ Backtesting ต้องทำด้วยความระมัดระวังและประสิทธิภาพในอดีตไม่เท่ากับประสิทธิภาพในอนาคต อย่างไรก็ตามมันเป็นสิ่งที่ทรงคุณค่าสำหรับการกำจัดวัชพืชออกกลยุทธ์ที่ไม่เคยมีการทำกำไรและค้นพบจุดอ่อนในกลยุทธ์ที่ดีอย่างเห็นได้ชัด การทำ Backtesting เป็นประโยชน์อย่างมากสำหรับการสร้างหลักการซื้อขายทั่วไปสำหรับตลาดหนึ่ง ๆ ตัวอย่างเช่นฉันได้ดำเนินการชุดทดสอบโดยใช้ระบบการซื้อขายรายการเริ่มต้นแบบสุ่ม ในบทความเหล่านี้: รายการแบบสุ่มและรายการแบบสุ่มบวกตัวชี้วัดทางเทคนิค การทดสอบเหล่านี้แสดงให้ฉันเห็นว่าในตลาด EURUSD ระบบรายการแบบสุ่มสามารถทำกำไรได้ ฉันจะไม่เข้าสู่ระบบรายการแบบสุ่ม แต่ฉันจะใช้หลักเกณฑ์เช่นการหยุดลงต่อเนื่องเป็นส่วนหนึ่งของการซื้อขายประจำวันของฉันใน EURUSD การใช้ Microsoft Excel Excel สามารถเข้าถึงได้มากและคนส่วนใหญ่ก็รู้จักทางของพวกเขาเกี่ยวกับซอฟต์แวร์แล้ว เป็นมิตรกับผู้ใช้และมีจำนวนมากข้อมูลออนไลน์เกี่ยวกับการพัฒนาทักษะ Excel กลยุทธ์การซื้อขายถูกตั้งโปรแกรมโดยใช้ข้อความตรรกะ Excel เป็นหนึ่งในสภาพแวดล้อมที่ง่ายที่สุดในการเขียนโปรแกรม ตัวบ่งชี้ทางเทคนิคจำนวนมากสามารถตั้งโปรแกรมได้และตรรกะในการซื้อขายสามารถทำได้ง่ายหรือซับซ้อนเท่าที่จำเป็น ใน Amazon eBook จุดของฉัน 8211 วิธีการ Backtest กลยุทธ์การซื้อขายโดยใช้ Excel 8211 ฉันแสดงให้เห็นว่า Excel สามารถใช้ในการพัฒนาสเปรดชีต backtest ของคุณเองได้อย่างไร หากคุณต้องการสเปรดชีตคุณสามารถสั่งซื้อได้โดยตรง: ซื้อ Excel Spreadsheets การเรียนรู้การค้าเป็นกระบวนการที่ช้ากว่าที่เราส่วนใหญ่ต้องการ อย่างไรก็ตามการใช้แนวคิดบางอย่างในบทความนี้เป็นไปได้ที่จะทำให้กระบวนการนี้เร็วขึ้น (และราคาไม่แพง) แบ่งปันสิ่งนี้: 06172013 TraderCode เวอร์ชันล่าสุด (v5.6) ประกอบด้วยตัวชี้วัดการวิเคราะห์ทางเทคนิคแบบใหม่การทำแผนภูมิแบบจุดและรูปและการทดสอบย้อนหลังของกลยุทธ์ 06172013 NeuralCode รุ่นล่าสุดสำหรับการซื้อขายเครือข่ายประสาทเทียม (v1.3) 06172013 ConnectCode Barcode Font Pack - ช่วยให้สามารถใช้บาร์โค้ดในแอพพลิเคชั่นสำนักงานและรวม add-in สำหรับ Excel ที่รองรับการสร้างบาร์โค้ดได้เป็นจำนวนมาก 06172013 InvestmentCode เครื่องคิดเลขการเงินและโมเดลสำหรับ Excel พร้อมใช้งานแล้ว 09012009 การเปิดตัวการลงทุนฟรีและเครื่องคิดเลขการเงินสำหรับ Excel 0212008 Release of SparkCode Professional - add-in สำหรับการสร้างแดชบอร์ดใน Excel ด้วย sparklines 12152007 ประกาศ ConnectCode Duplicate Remover - มีประสิทธิภาพเพิ่มในการค้นหาและลบรายการที่ซ้ำกันใน Excel 09082007 เปิดตัว TinyGraphs - โอเพนซอร์ส add-in สำหรับการสร้าง sparklines และขนาดเล็ก แผนภูมิใน Excel กลยุทธ์ Backtesting ใน Excel กลยุทธ์ Backtesting Expert ผู้เชี่ยวชาญด้าน Backtesting เป็นรูปแบบสเปรดชีตที่ช่วยให้คุณสามารถสร้างกลยุทธ์การซื้อขายโดยใช้ตัวชี้วัดทางเทคนิคและใช้กลยุทธ์ผ่านข้อมูลทางประวัติศาสตร์ ประสิทธิภาพของกลยุทธ์สามารถวัดและวิเคราะห์ได้อย่างรวดเร็วและง่ายดาย ระหว่างขั้นตอนการทำ backtesting ผู้เชี่ยวชาญด้านการทำ backtesting จะดำเนินการผ่านข้อมูลทางประวัติศาสตร์ในลักษณะแถวละบรรทัดจากบนลงล่าง แต่ละยุทธศาสตร์ที่ระบุจะได้รับการประเมินเพื่อพิจารณาว่าจะมีการปฏิบัติตามเงื่อนไขการเข้าร่วมหรือไม่ หากเงื่อนไขเป็นที่พอใจการค้าจะถูกป้อน ในทางกลับกันหากมีการออกเงื่อนไขทางออกจะมีการออกจากตำแหน่งก่อนหน้านี้ สามารถสร้างรูปแบบต่างๆของตัวชี้วัดทางเทคนิคและรวมกันเพื่อสร้างกลยุทธ์การซื้อขาย นี่ทำให้ผู้เชี่ยวชาญด้านการทำ backtesting เป็นเครื่องมือที่มีประสิทธิภาพและยืดหยุ่นมาก ผู้เชี่ยวชาญด้านการทำ backtesting ผู้เชี่ยวชาญด้านการทำ backtesting เป็นรูปแบบสเปรดชีตที่ช่วยให้คุณสร้างกลยุทธ์การซื้อขายโดยใช้ตัวชี้วัดทางเทคนิคและใช้กลยุทธ์ผ่านข้อมูลที่ผ่านมา ประสิทธิภาพของกลยุทธ์สามารถวัดและวิเคราะห์ได้อย่างรวดเร็วและง่ายดาย รูปแบบสามารถตั้งค่าให้เข้าสู่ตำแหน่ง Long หรือ Short เมื่อมีเงื่อนไขบางอย่างเกิดขึ้นและออกจากตำแหน่งเมื่อพบชุดเงื่อนไขอื่น ๆ โดยการซื้อขายโดยอัตโนมัติในข้อมูลทางประวัติศาสตร์แบบสามารถกำหนดผลกำไรของกลยุทธ์การค้า ผู้เชี่ยวชาญด้านการตรวจสอบย้อนหลังทีละขั้นตอน 1. เริ่มต้นผู้เชี่ยวชาญด้านการตรวจสอบย้อนกลับผู้เชี่ยวชาญด้านการทำ Backtesting สามารถเริ่มต้นได้จากโปรแกรม Windows Start Menu - TraderCode - Backtesting Expert วิธีนี้จะเปิดตัวรูปแบบสเปรดชีตที่มีแผ่นงานหลายแผ่นเพื่อให้คุณสามารถสร้างตัวชี้วัดการวิเคราะห์ทางเทคนิคและเรียกใช้การทดสอบเกี่ยวกับกลยุทธ์ต่างๆ คุณจะสังเกตเห็น Backtesting Expert ประกอบด้วยแผ่นงานที่คุ้นเคยมากมายเช่น DownloadedData, AnalysisInput, AnalysisOutput, ChartInput และ ChartOutput จากผู้เชี่ยวชาญด้านการวิเคราะห์รูปแบบ ซึ่งช่วยให้คุณสามารถเรียกใช้การทดสอบหลังทั้งหมดของคุณได้อย่างรวดเร็วและง่ายดายจากสภาพแวดล้อมของสเปรดชีตที่คุ้นเคย 2. ขั้นแรกเลือกแผ่นงาน DownloadedData คุณสามารถคัดลอกข้อมูลจากไฟล์สเปรดชีตหรือไฟล์ค่าที่คั่นด้วยจุลภาค (csv) ไปยังแผ่นงานนี้เพื่อการวิเคราะห์ทางเทคนิค รูปแบบของข้อมูลดังที่แสดงในแผนภาพ หรือคุณสามารถดูข้อมูลดาวน์โหลดเอกสารข้อมูลการซื้อขายหลักทรัพย์เพื่อดาวน์โหลดข้อมูลจากแหล่งข้อมูลที่รู้จักกันดีเช่น Yahoo Finance, Google Finance หรือ Forex เพื่อใช้ในผู้เชี่ยวชาญด้านการทำ backtesting 3. เมื่อคุณได้คัดลอกข้อมูลแล้วให้ไปที่แผ่นงาน AnalysisInput และคลิกที่ปุ่ม Analyze and BackTest ซึ่งจะสร้างตัวชี้วัดทางเทคนิคที่แตกต่างกันลงในแผ่นงาน AnalysisOutput และทำ backtesting กับกลยุทธ์ที่ระบุไว้ในแผ่นงาน StrategyBackTestingInput 4. คลิกที่แผ่นงาน StrategyBackTestingInput ในบทแนะนำนี้คุณจะต้องรู้ว่าเราได้ระบุทั้งกลยุทธ์แบบยาวและแบบสั้นโดยใช้ค่าไขว้เฉลี่ยเคลื่อนที่ เราจะเข้าสู่รายละเอียดของการระบุกลยุทธ์ในส่วนถัดไปของเอกสารนี้ แผนภาพด้านล่างแสดงทั้งสองกลยุทธ์ 5. เมื่อการทดสอบย้อนกลับเสร็จสิ้นผลลัพธ์จะถูกวางไว้ในแผ่นงาน AnalysisOutput, TradeLogOutput และ TradeSummaryOutput แผ่นงาน AnalysisOutput มีราคาในอดีตที่สมบูรณ์และตัวชี้วัดทางเทคนิคของหุ้น ในระหว่างการทดสอบหลังถ้าเงื่อนไขสำหรับกลยุทธ์มีความพึงพอใจข้อมูลเช่นราคาซื้อราคาขายค่าคอมมิชชั่นและกำไรจะถูกบันทึกไว้ในแผ่นงานนี้เพื่อให้ง่ายต่อการอ้างอิง ข้อมูลนี้มีประโยชน์หากคุณต้องการติดตามผ่านกลยุทธ์เพื่อดูว่ามีการป้อนและออกจากตำแหน่งของสต็อกหรือไม่ แผ่นงาน TradeLogOutput มีข้อมูลสรุปของการซื้อขายที่ดำเนินการโดยผู้เชี่ยวชาญการทำข้อเสนอแนะ Backtesting สามารถกรองข้อมูลได้อย่างง่ายดายเพื่อแสดงเฉพาะข้อมูลสำหรับกลยุทธ์เฉพาะ แผ่นงานนี้มีประโยชน์ในการพิจารณาผลกำไรโดยรวมหรือการสูญเสียกลยุทธ์ตามกรอบเวลาที่ต่างกัน ผลลัพธ์ที่สำคัญที่สุดของการทดสอบย้อนกลับจะอยู่ในแผ่นงาน TradeSummaryOutput แผ่นงานนี้มีผลกำไรรวมของกลยุทธ์ที่ดำเนินการ ดังที่แสดงไว้ในแผนภาพด้านล่างกลยุทธ์จะสร้างรายได้รวม 2,548.20 บาทโดยทำการซื้อขายทั้งหมด 10 รายการ ของธุรกิจการค้าเหล่านี้ 5 ตำแหน่งเป็น Long และ 5 เป็น Short positions อัตราส่วนที่สูงกว่า 1 แสดงถึงกลยุทธ์ที่ให้ผลกำไร คำอธิบายของแผ่นงานที่แตกต่างกันส่วนนี้ประกอบด้วยคำอธิบายโดยละเอียดของแผ่นงานต่างๆในรูปแบบผู้เชี่ยวชาญด้านการทำ backtesting แผ่นงาน DownloadedData, AnalysisInput, AnalysOutput, ChartInput และ ChartOutput จะเหมือนกันกับในรูปแบบ Expert Expert Analysis ดังนั้นพวกเขาจะไม่ได้อธิบายไว้ในส่วนนี้ สำหรับคำอธิบายที่สมบูรณ์ของแผ่นงานเหล่านี้โปรดดูที่ส่วนผู้เชี่ยวชาญด้านการวิเคราะห์ทางเทคนิค StrategyBackTestingInput แผ่นข้อมูลป้อนข้อมูลทั้งหมดสำหรับ backtesting รวมทั้งกลยุทธ์จะถูกป้อนโดยใช้แผ่นงานนี้ กลยุทธ์คือชุดของเงื่อนไขหรือกฎที่คุณจะซื้อในหุ้นหรือขายหุ้น ตัวอย่างเช่นคุณอาจต้องการใช้กลยุทธ์เพื่อไป Long (ซื้อหุ้น) หากค่าเฉลี่ยเคลื่อนที่ 12 วันของค่าเฉลี่ยอยู่เหนือค่าเฉลี่ยเคลื่อนที่ 24 วัน แผ่นงานนี้ทำงานร่วมกับตัวบ่งชี้ทางเทคนิคและข้อมูลราคาในแผ่นงาน AnalysisOutput ดังนั้นตัวบ่งชี้ทางเทคนิคเฉลี่ยเคลื่อนที่จะต้องเกิดขึ้นเพื่อให้มีกลยุทธ์การซื้อขายโดยอิงตามค่าเฉลี่ยเคลื่อนที่ การป้อนข้อมูลครั้งแรกที่จำเป็นในแผ่นงานนี้ (ดังแสดงในแผนภาพด้านล่าง) คือการระบุว่าจะออกจากงานทั้งหมดเมื่อสิ้นสุดช่วงทดสอบกลับหรือไม่ นึกภาพสถานการณ์ที่มีเงื่อนไขในการซื้อหุ้นและผู้เชี่ยวชาญด้านการทำ backtesting ป้อนการค้าแบบยาว (หรือสั้น) อย่างไรก็ตามกรอบเวลาสั้นเกินไปและสิ้นสุดลงก่อนที่การค้าจะสามารถบรรลุเงื่อนไขทางออกได้ส่งผลให้ธุรกิจการค้าบางส่วนไม่ได้ออกไปเมื่อสิ้นสุดเซสชัน backtesting คุณสามารถตั้งค่านี้เป็น Y เพื่อบังคับให้ธุรกิจการค้าทั้งหมดต้องออกเมื่อสิ้นสุดช่วงการทำ backtesting อื่น ๆ ธุรกิจการค้าจะถูกเปิดทิ้งไว้เมื่อเซสชัน backtesting สิ้นสุดลง กลยุทธ์สามารถรองรับได้สูงสุด 10 กลยุทธ์ในการทดสอบเดี่ยวครั้งเดียว แผนภาพด้านล่างแสดงข้อมูลที่จำเป็นสำหรับการระบุกลยุทธ์ Strategy Initials - การป้อนข้อมูลนี้สามารถใช้ตัวอักษรหรือตัวเลขได้ไม่เกิน 2 ตัว Strategy Initials ถูกใช้ในแผ่นงาน AnalysisOutput และ TradeLog เพื่อระบุกลยุทธ์ Long (L) Short (S) - ใช้เพื่อบ่งชี้ว่าจะต้องป้อนตำแหน่ง Long หรือ Short เมื่อเงื่อนไขการเข้าของกลยุทธ์เป็นอย่างไร เงื่อนไขการเข้าสู่ระบบการค้าระยะยาวหรือระยะสั้นจะถูกป้อนเมื่อเงื่อนไขการเข้า เงื่อนไขการเข้าสามารถแสดงเป็นนิพจน์ของสูตร การแสดงออกของสูตรเป็นตัวพิมพ์เล็กและตัวพิมพ์ใหญ่สามารถใช้ฟังก์ชันฟังก์ชันและคอลัมน์ตามที่อธิบายไว้ด้านล่าง crossabove (X, Y) - ส่งกลับค่า True หากคอลัมน์ X ข้ามด้านบน Y Y ฟังก์ชั่นนี้จะตรวจสอบงวดก่อนหน้าเพื่อให้แน่ใจว่ามีการครอสโอเวอร์เกิดขึ้นจริง crossbelow (X, Y) - ส่งกลับ True ถ้าคอลัมน์ X ข้ามด้านล่าง Y คอลัมน์ฟังก์ชันนี้จะตรวจสอบงวดก่อนหน้าเพื่อให้แน่ใจว่ามีการครอสโอเวอร์เกิดขึ้นจริง และ (logicalexpr,) - บูลีนและ ส่งกลับค่า True ถ้านิพจน์ตรรกะทั้งหมดเป็น True หรือ (logicalexpr,) - บูลีนหรือ ส่งกลับค่า True ถ้านิพจน์เชิงตรรกะใด ๆ เป็น True daysago (X, 10) - ส่งคืนค่า (ในคอลัมน์ X) 10 วันก่อน previoushigh (X, 10) - แสดงค่าสูงสุด (ในคอลัมน์ X) ในช่วง 10 วันที่ผ่านมาซึ่งรวมถึงวันนี้ previouslow (X, 10) - ส่งกลับค่าต่ำสุด (ในคอลัมน์ X) ของ 10 วันที่ผ่านมาซึ่งรวมถึงวันนี้ (จาก AnalysisOutput) A - คอลัมน์ AB - คอลัมน์ BC .. .. YY - คอลัมน์ YY ZZ - คอลัมน์ ZZ นี่คือส่วนที่น่าสนใจและมีความยืดหยุ่นมากที่สุดของรายการ เงื่อนไข ช่วยให้สามารถระบุคอลัมน์จากแผ่นงาน AnalysisOutput ได้ เมื่อดำเนินการทดสอบกลับแต่ละแถวจากคอลัมน์จะใช้สำหรับการประเมินตัวอย่างเช่น A 50 หมายความว่าแต่ละแถวในคอลัมน์ A ของแผ่นงาน AnalysisOutput จะถูกกำหนดไม่ว่าจะมากกว่า 50. AB ในตัวอย่างนี้ ถ้าค่าในคอลัมน์ A ในแผ่นงาน AnalysisOutput มีค่ามากกว่าหรือเท่ากับค่าของคอลัมน์ B จะเป็นไปตามเงื่อนไขการป้อนข้อมูล และในตัวอย่างนี้ถ้าค่าในคอลัมน์ A ในแผ่นงาน AnalysisOutput มีค่ามากกว่าค่าของคอลัมน์ B และค่าของคอลัมน์ C สูงกว่าคอลัมน์ D จะเป็นไปตามเงื่อนไขการป้อนข้อมูล crossabove (A, B) ในตัวอย่างนี้ถ้าค่าของคอลัมน์ A ในแผ่นงาน AnalysisOutput ตัดเหนือค่าของ B เงื่อนไขการป้อนข้อมูลจะได้รับการตอบสนอง crossabove หมายความว่าค่าเริ่มต้นมีค่าน้อยกว่าหรือเท่ากับ B และค่าของ A จะมีค่ามากกว่า B. เงื่อนไขการออกเงื่อนไขการออกสามารถใช้ฟังก์ชันฟังก์ชันและคอลัมน์ตามที่กำหนดไว้ในเงื่อนไขการป้อนข้อมูล ด้านบนของที่ยังสามารถใช้ประโยชน์จากตัวแปรดังที่แสดงด้านล่างตัวแปรสำหรับเงื่อนไขการจบการทำกำไรนี่คือราคาขายที่ลบด้วยราคาซื้อ ราคาขายต้องสูงกว่าราคาซื้อเพื่อหากำไร มิฉะนั้นกำไรจะเป็นศูนย์ ขาดทุนหมายถึงราคาขายหักด้วยราคาซื้อเมื่อราคาขายต่ำกว่าราคาซื้อ กำไร (ราคาขาย - ราคาซื้อ) ราคาซื้อหมายเหตุ ราคาขายต้องมากกว่าหรือเท่ากับราคาซื้อ มิฉะนั้นกำไรจะเป็นศูนย์ losspct (ราคาขาย - ราคาซื้อ) ราคาซื้อหมายเหตุ ราคาขายต้องน้อยกว่าราคาซื้อ มิฉะนั้น losspct จะเป็นศูนย์ ตัวอย่างกำไร 0.2 ในตัวอย่างนี้ถ้ากำไรในรูปของเปอร์เซ็นต์สูงกว่า 20 เงื่อนไขการออกจะได้รับความพึงพอใจ Commission - Commission ในรูปของเปอร์เซ็นต์ของราคาซื้อขาย หากราคาซื้อขายที่ 10 และค่าคอมมิชชั่นคือ 0.1 แล้วค่าคอมมิชชั่นจะเป็น 1. ค่าคอมมิชชั่นเปอร์เซ็นต์และค่าคอมมิชชั่นในสกุลเงินเหรียญสหรัฐฯจะรวมอยู่ในการคำนวณค่านายหน้าทั้งหมด ค่าคอมมิชชั่น - ค่านายหน้าเป็นสกุลเงินดอลลาร์ เปอร์เซ็นต์ค่าคอมมิชชั่นและค่าคอมมิชชั่นในสกุลเงินดอลลาร์จะสรุปรวมค่าคอมมิชชั่นทั้งหมด จำนวนหุ้น - จำนวนหุ้นที่จะซื้อหรือขายเมื่อเงื่อนไขการเข้าออกของกลยุทธ์เป็นไปตาม แผ่นงาน TradeSummaryOutput เป็นแผ่นงานที่มีบทสรุปของการค้าทั้งหมดที่ดำเนินการในระหว่างการทดสอบกลับ ผลลัพธ์ถูกจัดอยู่ในประเภทธุรกิจแบบสั้นและระยะยาว คำอธิบายของฟิลด์ทั้งหมดสามารถดูได้ด้านล่าง Total ProfitLoss - รวมกำไรหรือขาดทุนหลังหักค่านายหน้า ค่านี้คำนวณโดยสรุปผลกำไรและขาดทุนของการค้าทั้งหมดที่จำลองในการทดสอบหลัง รวม ProfitLoss ก่อน Commission - รวมกำไรหรือขาดทุนก่อนค่าคอมมิชชั่น ถ้าค่าคอมมิชชั่นถูกกำหนดเป็นศูนย์ฟิลด์นี้จะมีค่าเท่ากับ Total ProfitLoss ค่าคอมมิชชั่นทั้งหมด - ค่าคอมมิชชั่นทั้งหมดที่จำเป็นสำหรับการค้าทั้งหมดที่จำลองขึ้นระหว่างการทดสอบด้านหลัง จำนวนการซื้อขายทั้งหมด - จำนวนการซื้อขายทั้งหมดที่ดำเนินการในระหว่างการทดสอบย้อนกลับแบบจำลอง จำนวนธุรกิจที่ชนะ - จำนวนธุรกิจการค้าที่ทำกำไร จำนวนการสูญเสียการค้า - จำนวนของธุรกิจการค้าที่ทำขาดทุน ร้อยละที่ชนะการค้า - จำนวนธุรกิจที่ชนะการประมูลหารด้วยจำนวนการซื้อขายทั้งหมด เปอร์เซ็นต์การสูญเสียการค้า - จำนวนการซื้อขายที่เสียไปหารด้วยจำนวนการซื้อขายทั้งหมด การค้าเฉลี่ยที่ชนะ - มูลค่าเฉลี่ยของผลกำไรของธุรกิจการค้าที่ชนะ ค่าเฉลี่ยการสูญเสียการค้า - ค่าเฉลี่ยของการสูญเสียของการค้าที่สูญเสีย Average Trade - ค่าเฉลี่ย (กำไรหรือขาดทุน) ของการค้าเดี่ยวของการทดสอบย้อนกลับแบบจำลอง การค้าที่ใหญ่ที่สุดที่ชนะ - กำไรจากการค้าที่ใหญ่ที่สุดที่ชนะ การสูญเสียการค้าที่ใหญ่ที่สุด - การสูญเสียการค้าที่สูญเสียมากที่สุด การสูญเสียรายได้เฉลี่ยโดยเฉลี่ย - การค้าที่ชนะโดยเฉลี่ยหารด้วยค่าเฉลี่ยการสูญเสียการค้า Ratio winloss - ผลรวมของกำไรทั้งหมดในการซื้อขายที่ชนะหารด้วยยอดรวมของผลขาดทุนทั้งหมดที่เกิดจากการค้าที่สูญเสีย อัตราส่วนมากกว่า 1 หมายถึงกลยุทธ์ที่ให้ผลกำไร เวิร์กชีท TradeLogOutput แผ่นงานนี้มีการซื้อขายทั้งหมดที่จำลองโดยผู้เชี่ยวชาญด้านการทำดัชนีย้อนหลังเรียงตามวันที่ จะช่วยให้คุณสามารถซูมเข้าสู่การค้าหรือกรอบเวลาใด ๆ เพื่อกำหนดความสามารถในการทำกำไรของกลยุทธ์ได้อย่างรวดเร็วและง่ายดาย วันที่ - วันที่มีการป้อนหรือออกจากตำแหน่ง Long หรือ Short กลยุทธ์ - กลยุทธ์ที่ใช้ในการดำเนินการการค้านี้ ตำแหน่ง - ตำแหน่งของการค้าไม่ว่าจะเป็น Long หรือ Short การค้า - บ่งชี้ว่าการค้านี้เป็นการซื้อหรือขายหุ้น หุ้น - จำนวนหุ้นที่ซื้อขาย ราคา - ราคาที่ซื้อหรือขายหุ้น Comm - รวมค่านายหน้าสำหรับการค้านี้ PL (B4 Comm.) - กำไรหรือขาดทุนก่อนค่าคอมมิชชั่น PL (Aft Comm.) - กำไรหรือขาดทุนหลังหักค่านายหน้า cum PL (Aft Comm.) - กำไรหรือขาดทุนสะสมหลังหักค่าคอมมิชชั่น นี่คำนวณเป็นกำไรสะสมรวมตั้งแต่วันแรกของการซื้อขาย PL (ในฐานะปิดบัญชี) - กำไรหรือขาดทุนเมื่อปิดตำแหน่ง (ออกจากงาน) ทั้งค่าคอมมิชชั่นและค่าคอมมิชชั่นสำหรับการเข้าออกจะคิดใน PL นี้ ตัวอย่างเช่นถ้าเรามีตำแหน่งยาวที่ PL (B4 Comm.) อยู่ที่ 100 สมมติว่าเมื่อป้อนตำแหน่งจะมีการเรียกเก็บเงิน 10 ครั้งและเมื่อออกจากตำแหน่งจะมีการเรียกเก็บเงินอีก 10 ครั้ง PL (อยู่ในตำแหน่งปิด) คือ 100- 10 - 10 80. ค่านายหน้าในการเข้าและออกจากตำแหน่งคิดที่ตำแหน่งใกล้เคียง กลับไปที่ TraderCode ซอฟต์แวร์การวิเคราะห์ทางเทคนิคและตัวชี้วัดทางเทคนิควิธีการ backtest กลยุทธ์ใน Excel ให้ฉันเริ่มต้นด้วยการบอกว่า Im ไม่ใช่ผู้เชี่ยวชาญใน backtesting ใน Excel มีโหลดของบล็อกสมาร์ทมากออกมีที่เป็นฉันจะพูด skillz บ้าที่ การทำงานร่วมกับ Excel รวมถึง (แต่ไม่ จำกัด เฉพาะ) Michael Stokes ผ่านทาง marketsci Jeff Pietch ไปที่ etfprophet และ folks (David และ Corey) ที่ cssanalytics. wordpress ทุกคนเหล่านี้ได้รับความสง่างามพอในช่วงหลายปีที่จะแบ่งปันกับฉันว่าจะทำ backtests ดังนั้นฉันเป็นหนี้บุญคุณต่อพวกเขา และฉันอยากจะขอบคุณ Josh ที่นี่ที่ FOSS Trading ด้วยเพราะ HES ให้ความช่วยเหลือเพื่อเรียนรู้วิธีใช้ R เพื่อทดสอบ เมื่อคำนึงถึงสิ่งต่างๆฉันคิดว่า Id จะผ่านสิ่งที่ฉันคิดว่าสี่ขั้นตอนพื้นฐานในการสร้างผลการทดสอบย้อนหลังใน Excel โปรดทราบว่าไฟล์หลักของ Excel wasn8217t สร้างขึ้นโดยฉัน 8211 ซึ่งถูกสร้างขึ้นโดย Jared ที่ CondorOptions (ต้องอ่านอีกครั้งถ้าคุณไม่ติดตามเขา) ขั้นตอนที่ 1: รับข้อมูลขั้นตอนแรกคือการทำให้ข้อมูลการตลาดของคุณเป็น Excel มีสองวิธีขั้นพื้นฐานนี้เป็นครั้งแรกเกี่ยวกับการไปที่ Yahoo Finance และดาวน์โหลดข้อมูลทางประวัติศาสตร์โดยตรงเป็น CSV แล้วโหลดลงใน Excel การดำเนินการนี้เป็นสิ่งที่ดี แต่ไม่จำเป็นต้องมีการอัปเดตข้อมูลด้วยตนเองเมื่อคุณทำตามความหมายคุณจะต้องดาวน์โหลดข้อมูลที่ผ่านมาใหม่และคัดลอกและวางข้อมูลชุดข้อมูลทั้งหมดหรือชุดย่อยเพื่อปรับปรุงกลยุทธ์ของคุณ วิธีที่สองคือการใช้รหัสเพื่อดึงข้อมูลโดยอัตโนมัติจาก Yahoo Finance หลายคนได้เขียน VBA สำหรับการทำเพียงแค่นี้ฉันไม่ได้เขียนเองดังนั้นฉันไม่รู้สึกสะดวก republishing รหัส การค้นหาอย่างรวดเร็วใน Google จะเป็นตัวอย่างในการทำงานร่วมด้วย นอกจากนี้ยังมีเครื่องมือของบุคคลที่ 3 ที่ทำให้งานง่าย ๆ แนะนำ AnalyzerXL เนื่องจากมีความยืดหยุ่นและเป็นตัวเลือกมากที่สุด วิธีที่คุณจัดเก็บข้อมูลนี้ใน Excel ขึ้นอยู่กับคุณคนส่วนใหญ่ที่ฉันรู้จักมีเพียงแผ่นเดียวที่เก็บข้อมูลทั้งหมดแล้วมีแผ่นงานแยกต่างหากสำหรับส่วนที่เหลือของระบบ สำหรับระบบที่มีเครื่องเดียว (เช่น SPY) ไม่ใช่ปัญหาในการรวมข้อมูลและระบบ แต่เนื่องจากจำนวนเครื่องเพิ่มขึ้นคุณจะต้องมีแผ่นงานแยกจากกันเพื่อลดการเลื่อนและทำให้ง่าย เพื่ออัพเดต ขั้นตอนที่ 2: สร้างตัวบ่งชี้ของคุณตอนนี้เรามีข้อมูลแล้วเราสามารถใช้ข้อมูลดังกล่าวเพื่อสร้างตัวบ่งชี้หรือตัวบ่งชี้ ในตัวอย่างนี้ Jared ได้สร้างตัวบ่งชี้ DVI (เดิมสร้างโดย David ในฐานะ CSS Analytics) คุณจะเห็นว่าเราใช้ 5 คอลัมน์ที่แตกต่างกันเพื่อสร้างตัวบ่งชี้ที่แต่ละส่วนคำนวณ สิ่งหนึ่งที่ดีเกี่ยวกับการทำงานร่วมกับ Excel คือการทำให้คุณคิดว่าตัวบ่งชี้ถูกสร้างขึ้นได้อย่างไร วันนี้สามารถที่จะโยนและบ่งชี้โดยไม่เข้าใจว่าการทำงานเป็นอย่างไร คอลัมน์ตัวบ่งชี้สุดท้าย DVI คือผลรวมถ่วงน้ำหนักของคอลัมน์ยืดและ DVI ขนาดและ DVI นอกจากนี้โปรดทราบว่า AnalyzerXL ยังมีตัวบ่งชี้จำนวนมากที่กำหนดไว้ล่วงหน้าเพื่อให้การทดสอบย้อนหลังทำได้ง่ายขึ้นและมี Add-on อื่น ๆ สำหรับ Excel ที่มีฟังก์ชันการทำงานที่คล้ายคลึงกัน ขั้นตอนที่ 3: สร้างกฎการซื้อขายของคุณตอนนี้คุณมีตัวบ่งชี้คุณต้องสร้างกฎการซื้อขายของคุณ ในตัวอย่างนี้ (การคำนวณอยู่ในคอลัมน์สัญญาณ) กฎการซื้อขายของเราก็ใช้เวลานานถ้า DVI ต่ำกว่า 0.5 และสั้นถ้าเหนือกว่า แน่นอนคุณอาจมีกฎที่ซับซ้อนมากขึ้นเป็นรัฐที่เป็นกลางที่คุณไม่ได้ยาวหรือสั้นหรือตำแหน่งที่แตกต่างกันขนาดเทียบกับเพียงทั้งหมดในระยะยาวหรือสั้น ขั้นตอนที่ 4: เส้นโค้งการซื้อขายระยะยาวมีหลายวิธีที่นี่ แต่สิ่งที่คุณเห็นในตัวอย่างนี้เป็นวิธีง่ายๆในการทำ สมมติว่ามูลค่าเงินสดเริ่มต้น 10,000 และเพิ่มขึ้นหรือลดลงโดยว่าเรายาวหรือสั้นเมื่อใกล้ชิดของวันก่อนหน้าและไม่ว่าเราจะถูกต้องหรือไม่ ในรูปแบบฟังก์ชันเราจะแสดงข้อมูลนี้โดยบอกว่าถ้าเป็นเวลานานหลายวันก่อนส่วนของหุ้นในปัจจุบันโดยอัตราส่วนของการปิดในปัจจุบันใกล้เคียงกับช่วงปิดในรอบปีที่ผ่านมามิฉะนั้นจะมีส่วนต่างกันหลายวันก่อนหน้าโดยอัตราส่วนของรอบระยะเวลาเมื่อวานใกล้เคียงกับใกล้วันนี้ จากนั้นเราสามารถแสดงผลได้ โปรดสังเกตว่าการใช้เงินสดอยู่ที่นี่ แต่คุณสามารถทำเปอร์เซ็นต์วัตถุดิบแทนค่าเงินสดได้ง่ายๆ อะไรที่ขาดหายไปที่นี่อาจมีความสำคัญสำหรับการตัดสินใจว่าจะค้าขายหรือไม่ค้าระบบ ประการแรกผลลัพธ์ที่นี่ไม่มีความปราณีพวกเขาคิดว่าไม่มีค่าใช้จ่ายสำหรับการค้า ในระบบการแกว่งความถี่สูงเช่นนี้ค่าคอมมิชชั่นอาจมีผลกระทบสำคัญต่อความสามารถในการทำงานของกลยุทธ์ที่กำหนด ประการที่สองเราไม่มีสถิติเกี่ยวกับประสิทธิภาพของกลยุทธ์เพียงกราฟ โดยทั่วไปเราต้องการทราบสถิติเช่น CAGR และอัตราส่วน Sharpe เพื่อเปรียบเทียบกับกลยุทธ์อื่น ๆ นอกจากนี้เรายังไม่มีรายงานประจำเดือนหรือรายปี สิ่งเหล่านี้สามารถสร้างขึ้นใน Excel ด้วยการทำงานเพียงเล็กน้อยและอีกครั้ง AnalyzerXL มีตัวเลือกการรายงานเป็นจำนวนมากในฐานะส่วนหนึ่งของแพคเกจ That8217s ภาพรวมพื้นฐานของ backtesting ใน Excel 8211 หวังว่าคุณจะพบว่ามีประโยชน์ไม่พลาดการอัปเดตสมัครสมาชิก R-bloggers เพื่อรับอีเมลพร้อมโพสต์ R ล่าสุด (คุณจะไม่เห็นข้อความนี้อีก)

No comments:

Post a Comment