Thursday 10 August 2017

Backtesting Trading กลยุทธ์ กับ R


Im ใหม่มาก R และพยายาม backtest กลยุทธ์ Ive โปรแกรมแล้วใน WealthLab หลายสิ่งที่ฉันไม่เข้าใจ (และมัน does not ทำงานชัด :) ฉัน dont รับราคาปิดอย่างเป็นเวกเตอร์ หรือบางชนิดของเวกเตอร์ แต่จะเริ่มต้นด้วยโครงสร้างและฉันไม่เข้าใจจริงๆว่าฟังก์ชันนี้ทำอะไร Thats ทำไมชุดของฉัน 1 โทรอาจไม่ทำงาน n lt - nrow (ชุด) ไม่ทำงานอย่างใดอย่างหนึ่ง แต่ฉันต้องการที่สำหรับ Loop ดังนั้นฉันเดาว่าถ้าฉันได้รับทั้ง 2 คำถามตอบกลยุทธ์ของฉันควรจะทำงาน Im ขอบคุณมากสำหรับความช่วยเหลือใด ๆ .. R ดูเหมือนว่าค่อนข้างซับซ้อนแม้มีประสบการณ์การเขียนโปรแกรมในภาษาอื่น ๆ ใช่ฉันชนิดของการคัดลอกบางบรรทัดของรหัสจากกวดวิชานี้และ don39t จริงๆเข้าใจบรรทัดนี้ ฉันหมายถึงชุด 1 ฉันคิดว่าจะใช้ฟังก์ชัน f กับ quotcolumnquot 1 ของชุด แต่เนื่องจากชุดนี้เป็น compley กับโครงสร้างอื่น ๆ บางอย่างมันไม่ทำงาน ฉันกำลังพูดถึงบทแนะนำนี้ r-bloggersbacktesting-a-trading-strategy ndash MichiZH Jun 6 13 at 14: 22 วิธี Backtest กลยุทธ์ใน R กำลังจะสำรวจความสามารถในการทำ backtesting ของ R. ในโพสต์ก่อนหน้านี้เราได้พัฒนาโอกาสในการเข้าสู่ระบบแบบง่ายๆ สำหรับ USDCAD โดยใช้อัลกอริธึมและเทคนิคการเรียนรู้ด้วยเครื่องจักรจากเซตย่อยของการทำเหมืองข้อมูลที่เรียกว่ากฎของกฎการรวมกัน ในโพสต์นี้เราจะสำรวจวิธีการทำแบบทดสอบเต็มรูปแบบใน R โดยใช้กฎจากโพสต์ก่อนหน้านี้และใช้ผลกำไรและหยุดการขาดทุน ช่วยให้ดำน้ำได้ทันที: หมายเหตุ: ผลการทดสอบหลังทำถูกสร้างขึ้นจากแถบข้อมูล 4 ชั่วโมงในชุดข้อมูลของเราและไม่มีมุมมองแบบละเอียดมากขึ้น CAGR (อัตราการเติบโตรายปี) เป็นเปอร์เซ็นต์ gainloss ต่อปีซึ่งหมายความว่าจะทำให้การเจริญเติบโตเป็นงวดเท่า ๆ กันในแต่ละปี เนื่องจากการทดสอบของเราสิ้นสุดลงแล้วให้ดูว่าเราสามารถปรับปรุงประสิทธิภาพโดยการเพิ่มการหยุดขาดทุนและทำกำไรได้หรือไม่ ด้วยการสูญเสียเพียงครั้งเดียวประสิทธิภาพการทำงานลดลง ดูเหมือนว่าเรากำลังนำธุรกิจของเราออกไปก่อนที่จะสามารถกู้คืนได้ เพื่อที่จะล็อคผลกำไรของเราให้ไปข้างหน้าและดำเนินการทำกำไร การล็อกกำไรของเราด้วยผลกำไรดีขึ้นเล็กน้อย แต่ไม่มากนัก รวมทั้งการหยุดขาดทุนและการทำกำไร ตอนนี้ให้เปรียบเทียบกลยุทธ์ Long Short กับการสูญเสียเพียงแค่ทำกำไรและหยุดทำกำไรและทำกำไร ตอนนี้คุณรู้วิธีเพิ่มกำไรและหยุดการขาดทุนผมขอแนะนำให้คุณเล่นข้อมูลและทดสอบค่าต่างๆตามพารามิเตอร์ความเสี่ยงส่วนบุคคลของคุณและใช้กฎของคุณเอง แม้จะมีอัลกอริทึมที่มีประสิทธิภาพและเครื่องมือที่ซับซ้อนก็ยากที่จะสร้างกลยุทธ์ที่ประสบความสำเร็จ สำหรับทุกความคิดที่ดีเรามักจะมีคนเลวร้ายอีกหลายคน คุณสามารถใช้เครื่องมือและความรู้ที่เหมาะสมกับคุณได้อย่างมีประสิทธิภาพเพื่อทดสอบความคิดของคุณจนกว่าคุณจะได้รับความคิดเห็นที่ดี เราได้ปรับปรุงขั้นตอนนี้ใน TRAIDE ใดก็ตามเราพัฒนาโครงสร้างพื้นฐานการทดสอบที่ช่วยให้คุณสามารถดูได้ว่ารูปแบบใดอยู่ในข้อมูลของคุณและในแบบเรียลไทม์ดูว่าข้อมูลเหล่านี้มีประสิทธิภาพสูงกว่าข้อมูลที่ผ่านมาของคุณอย่างไร มีการออก TRAIDE สำหรับ 7 คู่ใหญ่ในตลาด FX ด้วยตัวชี้วัดทางเทคนิคภายในสองสัปดาห์ หากคุณสนใจในการทดสอบซอฟต์แวร์และให้ข้อเสนอแนะโปรดส่งอีเมลไปที่ infoinovancetech เรามีจุดให้บริการ 50 จุดการตอบกลับ: การตีความย้อนหลังการทำ Backtesting เป็นองค์ประกอบสำคัญของการพัฒนาระบบการซื้อขายที่มีประสิทธิภาพ สามารถทำได้โดยการสร้างใหม่โดยใช้ข้อมูลทางประวัติศาสตร์การค้าที่เกิดขึ้นในอดีตโดยใช้กฎที่กำหนดโดยกลยุทธ์ที่กำหนด ผลเสนอสถิติที่สามารถใช้ในการวัดประสิทธิภาพของกลยุทธ์ การใช้ข้อมูลนี้ผู้ค้าสามารถเพิ่มประสิทธิภาพและปรับปรุงกลยุทธ์หาข้อบกพร่องด้านเทคนิคหรือทฤษฎีและได้รับความมั่นใจในกลยุทธ์ของตนก่อนนำไปใช้กับตลาดจริง ทฤษฎีพื้นฐานคือกลยุทธ์ใด ๆ ที่ทำงานได้ดีในอดีตมีแนวโน้มที่จะทำงานได้ดีในอนาคตและตรงกันข้ามกลยุทธ์ใด ๆ ที่มีประสิทธิภาพต่ำในอดีตน่าจะมีผลในทางที่ไม่ดีในอนาคต บทความนี้จะกล่าวถึงสิ่งที่แอ็พพลิเคชันใช้เพื่อทำ backtest ชนิดของข้อมูลที่ได้มาและวิธีการนำไปใช้ข้อมูลและเครื่องมือ Backtesting สามารถให้ข้อเสนอแนะทางสถิติที่มีคุณค่ามากมายเกี่ยวกับระบบที่กำหนดได้ สถิติย้อนหลังแบบทั่วไปบางอย่าง ได้แก่ : กำไรสุทธิหรือขาดทุน - กำไรหรือขาดทุนสุทธิเพิ่มขึ้น กรอบเวลา - วันที่ผ่านมาซึ่งเกิดการทดสอบ จักรวาล - คลังที่รวมอยู่ในการทดสอบหลังการขาย มาตรการความผันผวน - เปอร์เซ็นต์ upside และ downside สูงสุด ค่าเฉลี่ย - เปอร์เซ็นต์เฉลี่ยที่ได้รับและการสูญเสียเฉลี่ยเฉลี่ยที่จัดขึ้น การได้รับสาร - เปอร์เซ็นต์ของเงินลงทุนที่ลงทุน (หรือถูกนำออกสู่ตลาด) อัตราส่วน - อัตราส่วนการชนะในการขาดทุน ผลตอบแทนต่อปี - ผลตอบแทนร้อยละต่อปี ผลตอบแทนที่ปรับเปลี่ยนตามความเสี่ยง - อัตราผลตอบแทนเป็นเปอร์เซ็นต์ตามความเสี่ยง โดยปกติซอฟต์แวร์ backtesting จะมีหน้าจอสองหน้าจอที่มีความสำคัญ ข้อแรกช่วยให้พ่อค้าสามารถกำหนดการตั้งค่า backtesting ได้ การปรับแต่งเหล่านี้ประกอบด้วยทุกอย่างตั้งแต่ช่วงเวลาจนถึงค่าคอมมิชชั่น นี่คือตัวอย่างของหน้าจอดังกล่าวใน AmiBroker: หน้าจอที่สองคือรายงานผลการทำ backtesting ที่เกิดขึ้นจริง นี่คือที่ที่คุณสามารถดูข้อมูลทั้งหมดที่กล่าวมาข้างต้นได้ นี่คือตัวอย่างของหน้าจอนี้ใน AmiBroker: โดยทั่วไปซอฟต์แวร์ซื้อขายส่วนใหญ่มีองค์ประกอบที่คล้ายคลึงกัน บางโปรแกรมระดับไฮเอนด์ยังมีฟังก์ชันเพิ่มเติมในการปรับขนาดตำแหน่งอัตโนมัติการเพิ่มประสิทธิภาพและคุณลักษณะขั้นสูงอื่น ๆ อีกด้วย 10 บัญญัติมีหลายปัจจัยที่ผู้ค้าต้องใส่ใจกับกลยุทธ์การซื้อขายย้อนหลัง นี่คือรายการ 10 สิ่งที่สำคัญที่สุดที่ควรจดจำขณะที่ทำย้อนหลังการทดสอบ: คำนึงถึงแนวโน้มตลาดในระยะเวลาที่กำหนดกลยุทธ์ที่กำหนดไว้ ตัวอย่างเช่นถ้ากลยุทธ์มีการตรวจสอบย้อนหลังเฉพาะช่วงปี 2542-2543 แต่อาจไม่ดีเท่าที่ควรในตลาดหมี บ่อยครั้งที่ควรทำ backtest ในกรอบเวลาที่ยาวนานซึ่งครอบคลุมเงื่อนไขตลาดหลายประเภท คำนึงถึงจักรวาลที่เกิดขึ้นในการทำ backtesting ตัวอย่างเช่นหากมีการทดสอบระบบตลาดแบบกว้าง ๆ กับจักรวาลซึ่งประกอบด้วยหุ้นเทคโนโลยีอาจทำให้ไม่ดีขึ้นในหลายภาคส่วน ตามกฎทั่วไปหากกลยุทธ์มีการกำหนดเป้าหมายไปยังประเภทเฉพาะของหุ้น จำกัด จักรวาลประเภท แต่ในกรณีอื่น ๆ ทั้งหมดรักษาจักรวาลขนาดใหญ่เพื่อการทดสอบ มาตรการความผันผวนเป็นสิ่งสำคัญอย่างยิ่งที่จะต้องพิจารณาในการพัฒนาระบบการซื้อขาย โดยเฉพาะอย่างยิ่งสำหรับบัญชีที่ใช้ประโยชน์ซึ่งอยู่ภายใต้การเรียกหลักประกันหากส่วนของผู้ถือหุ้นลดลงต่ำกว่าจุดหนึ่ง ผู้ค้าควรพยายามทำให้ความผันผวนต่ำเพื่อลดความเสี่ยงและช่วยให้สามารถเข้าและออกได้ง่ายขึ้น จำนวนบาร์โดยเฉลี่ยที่จัดขึ้นเป็นสิ่งที่สำคัญมากในการเฝ้าดูเมื่อมีการพัฒนาระบบการซื้อขาย แม้ว่าซอฟต์แวร์การทำ backtesting ส่วนใหญ่จะมีค่าคอมมิชชั่นในการคำนวณขั้นสุดท้ายไม่ได้หมายความว่าคุณควรละเลยสถิตินี้ ถ้าเป็นไปได้การเพิ่มจำนวนบาร์โดยเฉลี่ยที่จัดขึ้นสามารถลดค่าคอมมิชชั่นและปรับปรุงผลตอบแทนโดยรวมของคุณได้ การเปิดรับแสงเป็นดาบสองคม ความเสี่ยงที่เพิ่มขึ้นอาจนำไปสู่ผลกำไรที่สูงขึ้นหรือความสูญเสียที่สูงขึ้นในขณะที่ความเสี่ยงที่ลดลงหมายถึงกำไรที่ลดลงหรือความสูญเสียที่ลดลง อย่างไรก็ตามโดยทั่วไปแล้วควรเก็บความเสี่ยงไว้ต่ำกว่า 70 เพื่อลดความเสี่ยงและทำให้สามารถเข้าและออกจากสต็อกได้ง่ายขึ้น สถิติ gainloss เฉลี่ยบวกกับอัตราส่วนที่ชนะต่อขาดทุนจะเป็นประโยชน์ในการกำหนดตำแหน่งและการจัดการเงินที่ดีที่สุดโดยใช้เทคนิคเช่น Kelly Criterion (ดูการบริหารเงินโดยใช้เกณฑ์ Kelly) ผู้ค้าสามารถทำตำแหน่งที่มีขนาดใหญ่ขึ้นและลดค่าใช้จ่ายด้านค่าคอมมิชชั่นโดยการเพิ่มผลกำไรโดยเฉลี่ยและเพิ่มอัตราส่วนการชนะต่อขาดทุน ผลตอบแทนเป็นรายปีเป็นสิ่งสำคัญเพราะถูกใช้เป็นเครื่องมือในการเปรียบเทียบประสิทธิภาพของระบบกับสถานที่การลงทุนอื่น ๆ เป็นสิ่งสำคัญไม่เพียง แต่จะดูที่ผลตอบแทนต่อปีโดยรวม แต่ยังคำนึงถึงความเสี่ยงที่เพิ่มขึ้นหรือลดลง ซึ่งสามารถทำได้โดยดูจากผลตอบแทนที่ได้รับการปรับความเสี่ยงซึ่งเป็นปัจจัยเสี่ยงต่างๆ ก่อนที่ระบบการซื้อขายจะถูกนำมาใช้จะต้องมีประสิทธิภาพดีกว่าสถานที่ลงทุนอื่น ๆ ทั้งหมดที่มีความเสี่ยงเท่ากับหรือน้อยกว่า การปรับแต่งการทำ backtesting เป็นเรื่องสำคัญมาก แอ็พพลิเคชัน backtesting จำนวนมากมีการป้อนข้อมูลสำหรับจำนวนเงินที่ได้รับค่าคอมมิชชั่นจำนวนล็อต (หรือเศษส่วน) ขนาดล็ใหญ่ขนาดขีดความต้องการของอัตราดอกเบี้ยอัตราดอกเบี้ยสมมติฐานการลื่นไถลกฎการจัดตำแหน่งตำแหน่งกฎการออกจากแถบเดียวกันการตั้งค่าการหยุดชะงัก (ต่อท้าย) และอื่น ๆ อีกมากมาย ได้ผลการทำ backtesting ที่ถูกต้องที่สุด i t เป็นสิ่งสำคัญในการปรับแต่งการตั้งค่าเหล่านี้เพื่อเลียนแบบโบรกเกอร์ที่จะใช้เมื่อระบบทำงานได้ การทำ Backtesting บางครั้งอาจนำไปสู่สิ่งที่เรียกว่าการเพิ่มประสิทธิภาพมากเกินไป นี่เป็นเงื่อนไขที่ผลการดำเนินงานได้รับการปรับให้เข้ากับอดีตมากจนไม่เป็นที่คาดหมายในอนาคตอีกต่อไป โดยทั่วไปแล้วควรใช้หลักเกณฑ์ที่ใช้กับหุ้นทั้งหมดหรือเลือกกลุ่มเป้าหมายที่เลือกและไม่ได้รับการปรับให้เหมาะกับขอบเขตที่ผู้สร้างไม่สามารถเข้าใจได้อีกต่อไป Backtesting ไม่ใช่วิธีที่ถูกต้องที่สุดในการวัดประสิทธิภาพของระบบการซื้อขายที่กำหนด บางครั้งยุทธศาสตร์ที่ทำงานได้ดีในอดีตไม่สามารถทำได้ดีในปัจจุบัน ผลการดำเนินงานที่ผ่านมาไม่ได้บ่งบอกถึงผลการดำเนินงานในอนาคต ตรวจสอบให้แน่ใจว่าได้ทำการค้ากระดาษเป็นระบบที่ได้รับการตรวจสอบย้อนกลับสำเร็จแล้วก่อนที่จะมีการดำเนินชีวิตเพื่อให้มั่นใจว่ากลยุทธ์ยังคงใช้ในทางปฏิบัติ บทสรุปการทำ Backtesting เป็นส่วนสำคัญที่สุดในการพัฒนาระบบการซื้อขาย หากสร้างและตีความอย่างถูกต้องจะช่วยให้ผู้ค้าสามารถเพิ่มประสิทธิภาพและปรับปรุงกลยุทธ์หาข้อบกพร่องด้านเทคนิคหรือทฤษฎีรวมทั้งได้รับความเชื่อมั่นในกลยุทธ์ของตนก่อนนำไปใช้กับตลาดโลกแห่งความจริง การพัฒนาระบบการค้าระดับ high-end AmiBroker (amibroker) - การพัฒนาระบบการค้าการลงทุนด้านงบประมาณ การวัดความสัมพันธ์ระหว่างการเปลี่ยนแปลงปริมาณที่ต้องการสินค้าและการเปลี่ยนแปลงราคา ราคา. มูลค่าตลาดรวมของหุ้นทั้งหมดของ บริษัท ที่โดดเด่น มูลค่าหลักทรัพย์ตามราคาตลาดคำนวณโดยการคูณ Frexit ย่อมาจาก quotFrench exitquot เป็นเศษเสี้ยวของคำว่า Brexit ของฝรั่งเศสซึ่งเกิดขึ้นเมื่อสหราชอาณาจักรได้รับการโหวต คำสั่งซื้อที่วางไว้กับโบรกเกอร์ที่รวมคุณลักษณะของคำสั่งหยุดกับคำสั่งซื้อที่ จำกัด ไว้ คำสั่งหยุดการสั่งซื้อจะ รอบการจัดหาเงินทุนที่นักลงทุนซื้อหุ้นจาก บริษัท ในราคาที่ต่ำกว่าการประเมินมูลค่าวางไว้ ทฤษฎีเศรษฐศาสตร์ของการใช้จ่ายทั้งหมดในระบบเศรษฐกิจและผลกระทบต่อผลผลิตและอัตราเงินเฟ้อ เศรษฐศาสตร์ของเคนส์ได้รับการพัฒนา

No comments:

Post a Comment