Monday, 17 July 2017

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


Backtesting: การตีความย้อนหลังการทำ 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) - การพัฒนาระบบการค้าการลงทุนด้านงบประมาณ ข้อ 50 คือข้อตกลงการเจรจาต่อรองและข้อยุติในสนธิสัญญา EU ที่ระบุขั้นตอนที่จะต้องดำเนินการสำหรับประเทศใด ๆ ที่ การเสนอราคาเริ่มต้นของสินทรัพย์ของ บริษัท ที่ล้มละลายจากผู้ซื้อที่สนใจที่ได้รับเลือกโดย บริษัท ที่ล้มละลาย จากกลุ่มผู้เสนอราคา เบต้าเป็นตัวชี้วัดความผันผวนหรือความเสี่ยงอย่างเป็นระบบของการรักษาความปลอดภัยหรือผลงานเมื่อเทียบกับตลาดโดยรวม ประเภทของภาษีที่เรียกเก็บจากเงินทุนที่เกิดจากบุคคลและ บริษัท กำไรจากการลงทุนเป็นผลกำไรที่นักลงทุนลงทุน คำสั่งซื้อความปลอดภัยที่ต่ำกว่าหรือต่ำกว่าราคาที่ระบุ คำสั่งซื้อวงเงินอนุญาตให้ผู้ค้าและนักลงทุนระบุ กฎสรรพากรภายใน (Internal Internal Revenue Service หรือ IRS) ที่อนุญาตให้มีการถอนเงินที่ปลอดจากบัญชี IRA กฎข้อนี้ต้องการแม้ว่ากลยุทธ์การสร้างกลยุทธ์ของเรามีการพัฒนาไปไกลเกินขอบเขตของ NT เมื่อหลายปีก่อนผมพบว่าตัวเองยังคงใช้มันเป็นครั้งคราวเพื่อวัตถุประสงค์หลายประการและจุดเริ่มต้นของเราดังนั้นบางทีผมอาจจะช่วยได้ คุณอยู่ที่นี่. NinjaTrader แน่นอนมีข้อบกพร่องและข้อบกพร่องของ แต่แพลตฟอร์มทั้งหมดทำและในหมู่แพลตฟอร์มการค้าปลีกทั่วไปออกมีฉันคิดว่า NT เป็นหนึ่งในใช้งานง่ายและตรงไปตรงมาที่สุดและเป็นหนึ่งในที่ง่ายที่สุดที่จะใช้ในลักษณะที่มีประสิทธิภาพออกขวาของกล่อง . หนึ่งในเหตุผลนี้คือตัวช่วยสร้างกลยุทธ์ของ NTs ซึ่งช่วยให้ผู้ใช้สามารถสร้างกลยุทธ์ได้โดยปราศจากความรู้เกี่ยวกับการเขียนโค้ดโดยใช้ Building Block การสร้าง entryexit ฉันจะให้ตัวอย่าง สมมติว่าเราต้องการสร้างกลยุทธ์ที่เข้าสู่เมื่อ EMA (ค่าเฉลี่ยเคลื่อนที่แบบเสวนา) ในช่วง 15 ข้ามเหนือ SMA (ค่าเฉลี่ยเคลื่อนที่แบบง่าย) ในช่วง 15 และออกจากตลาดใกล้วันนี้ ในการทำเช่นนี้เราเพียงแค่เปิดวิซาร์ดกลยุทธ์กำหนดกลยุทธ์ของเราชื่อและเผชิญหน้ากับหน้าจอต่อไปนี้ซึ่งช่วยให้เราสามารถกำหนดเงื่อนไขต่างๆได้ถึง 10 ชุดซึ่งเมื่อถูกเรียกใช้จะนำไปสู่การกระทำที่เฉพาะเจาะจง (โดยปกติ รายการหรือออก): เมื่อเราคลิก Add ในหน้าต่างด้านบนหน้าจอต่อไปนี้: ตามที่คุณเห็น Ive เลือก EMA ทางด้านซ้ายและ SMA ทางด้านขวาและ Ive เปลี่ยนแปลงค่า Period ของเรา สำหรับแต่ละคนถึง 15. ในศูนย์ Ive ได้เปลี่ยนตัวเลือกแบบเลื่อนลงไปที่ CrossAbove กด OK เติมข้อมูลส่วนบนสุดของหน้าจอด้านบนสุด ตอนนี้ฉันจะบอกให้ Enter Long เมื่อทริกเกอร์นี้เกิดขึ้นและคลิก Ok: และ thats it เราคลิกผ่านทางถัดไปกลยุทธ์ของเราบันทึกเงินทุนและมีอิสระที่จะทำ backtest เพื่อพิจารณาผลการซื้อขายในช่วงที่ผ่านมาโดยใช้แพลตฟอร์ม NT ได้รับนี้เป็นกลยุทธ์หนึ่งมิติ (และแน่นอนจะไม่มีผลกำไร) แต่เป็นตัวอย่างง่ายๆเพียงว่าคุณสามารถสร้างกลยุทธ์การซื้อขายอัตโนมัติได้อย่างง่ายดายสมมติว่าตรรกะ entryexit ของคุณสามารถวัดได้โดยใช้ตัวเลือก Building Block ซึ่ง มีความกว้างขวางมากถ้าคุณเป็นคนสร้างสรรค์ สุดท้ายให้เดินผ่านคุณลักษณะเพิ่มเติมหนึ่งอย่าง สมมติว่าไม่แน่ใจว่าค่าของช่วงเวลาเฉลี่ยที่เคลื่อนไหวอยู่ในเกณฑ์ดีที่สุดในยุทธศาสตร์ตัวอย่างของเรา สมมติว่าเราต้องการทดสอบหลายค่าเพื่อช่วยให้เราพิจารณาว่าค่าใดเหมาะที่สุด ในการทำเช่นนี้เราเพียงกดกลับและเผชิญหน้ากับหน้าจอนี้: ในขณะที่คุณเห็น Ive สร้างตัวแปรสองตัวแปรขึ้นมาและให้ชื่อเหนือ PeriodOne จะทำหน้าที่เป็นค่าเฉลี่ยระยะเวลาของค่าเฉลี่ยเคลื่อนที่ของ EMA และ PeriodTwo จะทำหน้าที่เป็นค่าเฉลี่ยระยะเวลาของค่าเฉลี่ยเคลื่อนที่ของ SMA ตอนนี้ฉันคลิกถัดไปและกลับไปที่หน้าจอการป้อนข้อมูลเงื่อนไขของเราและเปิดตัวสร้างเงื่อนไขใหม่อีกครั้งและฉันเพียง แต่เปลี่ยนค่า 15 ค่าเป็นค่าชื่อตัวแปรใหม่ของเรา (PeriodOne และ PeriodTwo ตามลำดับ): สิ่งที่ทำให้เราสามารถทำ, จะเปิดตัวการเพิ่มประสิทธิภาพซึ่งจะดำเนินการในการทำ backtest ค่างวดต่างๆสำหรับทั้งสองค่าเฉลี่ยเคลื่อนที่เหล่านี้และจะแสดงผลลัพธ์ของการทดสอบแต่ละครั้งสำหรับการตรวจสอบของเรา Ive ไปข้างหน้าและเรียกใช้การเพิ่มประสิทธิภาพนี้ซึ่งใช้เวลาเพียงหนึ่งหรือสองนาทีโดยใช้น้ำมันดิบและการเพิ่มแถบ 15 นาทีเป็นชุดข้อมูลของเรา: ตามที่คุณเห็นในคอลัมน์ Parameters ด้านขวามือจะมีการทดสอบชุดค่าผสมต่างๆ ค่างวดและได้จัดอันดับผลการค้นหาทั้งหมดตามกำไรสุทธิทั้งหมดที่ได้รับในช่วงที่ผ่านมาในช่วงทดสอบของเรา (312015 ถึง 112017 ในกรณีนี้) อีกครั้งนี้เป็นตัวอย่างง่ายๆโดยเฉพาะเพื่อแสดงจุด แต่ประเด็นก็ถูกต้อง โดยเฉพาะอย่างยิ่งในช่วงเริ่มต้นเมื่อคุณกำลังทดสอบและทดสอบสิ่งต่างๆคุณสามารถไปจากขั้นตอนความคิดผลการทดสอบย้อนหลังแสดงให้เห็นอย่างแม่นยำว่าความคิดแบบใดที่จะให้ผลในช่วงเวลาที่ผ่านมาภายในไม่กี่นาทีแม้ไม่มีความรู้เกี่ยวกับการเขียนโปรแกรมใด ๆ นอกจากนี้ยังมีปุ่มรหัสดูอยู่ในหน้าจอด้านบนบางส่วนซึ่งช่วยให้คุณเห็นได้ว่าส่วนต่างๆของตัวอาคารที่คุณเลือกแตกต่างกันลงตัวเป็นโค้ดที่ใช้งานได้วิธีที่ดีในการช่วยคุณเรียนรู้กระบวนการเข้ารหัสตลอดเวลา คำแนะนำของฉันกระโดดไปทางขวาทดสอบเล่นรอบ สามารถเรียนรู้ได้อย่างรวดเร็วและมีประสิทธิภาพด้วยการทำเช่นนั้น โดยเฉพาะอย่างยิ่งสำหรับผู้ที่เรียนรู้ได้ดีที่สุดโดยการทำ ในทางตรงกันข้ามกับ imbibing นานอุจจาระแห้งตำราการเรียนการสอน ฉันหวังว่านี้จะเป็นประโยชน์ เพลิดเพลินไปกับ 660 Views middot ดูคำ UpVotes middot ไม่ได้สำหรับการทำซ้ำคุณถามวิธีการสร้างระบบการซื้อขายบน NinjaTrader (NT) และทดสอบกลับ สามารถทำได้ แต่ไม่ใช่เรื่องง่าย โดยไม่ต้องเขียนโปรแกรมและออกแบบซอฟต์แวร์ฉันสามารถให้แนวคิดทั่วไปแก่คุณได้ว่าจะทำอย่างไร ขั้นตอนแรกคือการเขียนระบบการซื้อขาย (i) เขียนโมดูลที่จะมีชุดเซ็ตอัพทั้งหมดสำหรับธุรกิจการค้าที่คุณต้องการดำเนินการ (ระบุเงื่อนไข (s) ที่เป็นโอกาสที่ดีที่สุดในการเข้าสู่การค้าซึ่งจะขึ้นอยู่กับ (ii) เขียนโมดูลที่จะค้นหาชุดเหล่านั้นในข้อมูลของคุณในแบบเรียลไทม์ (iii) เขียนโมดูลที่จะแคตตาล็อกและบันทึกการตั้งค่าที่พบใน ข้อมูลในเวลาจริงและ (iv) เขียนโมดูลที่จะดำเนินการค้าโดยยึดตามชุดใดชุดหนึ่ง นี้ในตัวเองเป็นสิ่งที่ท้าทายเช่นนี้ต้องทำในเวลาจริง นอกจากนี้คุณต้องจัดการกับกรณีที่พบชุดอุปกรณ์หลายชุดที่อาจแสดงธุรกิจการค้าในทิศทางเดียวกันหรือที่ไม่เห็นด้วย (เช่นยาวและสั้น) นอกจากนี้คุณยังต้องพิจารณาเป้าหมายเกณฑ์การทำกำไรสำหรับการตั้งค่าของคุณหยุดการสูญเสียและเกณฑ์ต่อท้าย สุดท้าย แต่อย่างน้อยไม่น้อยคุณต้องคิดถึงการปรับขนาดและออกกลยุทธ์ด้วยเกณฑ์การตั้งค่าการค้าของคุณ เช่นกันฉันยังไม่ได้กล่าวถึงการตรวจสอบและข้อผิดพลาดในการจัดการคอมโพเนนต์ของรหัสซึ่งคุณจะต้องอยู่เช่นกัน ในการดำเนินการนี้อย่างมีประสิทธิภาพคุณจะต้องใช้รหัสนี้ ปัญหาเกี่ยวกับการเขียนข้อความนี้ใน NT คือ NT สนับสนุนเฉพาะเซ็กเมนต์ย่อยของภาษา C และปัจจุบันสนับสนุนเฉพาะกรอบ 3.5 เท่านั้น ซึ่งหมายความว่าคุณจะต้องเขียนใน C เป็น dll และอ้างอิงในรหัส NT ของคุณ ตอนนี้คุณได้เขียน dll เพื่อระบุการค้าคุณจะต้องเขียนโค้ดเพื่อดำเนินการการค้า NT มีวิธีจัดการและไม่มีการจัดการเพื่อทำเช่นนี้ ฉันกำลังใช้และรหัส NT และฉันจะบอกว่าส่วนนี้ของ NT ไม่ได้รับการจัดทำเป็นเอกสารอย่างดีอย่างน้อยฉันไม่พบว่าเป็น แต่ในความเป็นธรรมทั้งหมดคุณจะได้รับความช่วยเหลือจากบุคลากรของ NT ในฟอรัมสนับสนุนของตน คุณจะต้องใช้วิธีการที่ไม่มีการจัดการเพื่อให้ได้ความยืดหยุ่นมากที่สุด แน่นอนคุณจะต้องการใช้โครงสร้างฐานข้อมูลบางอย่างในโค้ดของคุณเพื่อบันทึกการค้าของคุณ ส่วนนี้ของโปรแกรมจะเป็นสิ่งที่ท้าทายเช่นกันเนื่องจากมีบางประเด็นที่คุณจะพบที่นี่ การค้าแต่ละครั้งจะต้องได้รับการตรวจสอบคำสั่งซื้อจะต้องมีการเรียงลำดับและตรวจสอบอย่างดีและตำแหน่งของคุณจะต้องดูอย่างระมัดระวังโดยเฉพาะอย่างยิ่งหากคุณวางแผนที่จะเข้าสู่ธุรกิจโดยการย้อนกลับตำแหน่ง ตอนนี้คุณได้ไกลถึงขั้นนี้คุณสามารถเขียนกลยุทธ์ NT เพื่อทดสอบระบบของคุณได้ อีกวิธีหนึ่งที่ไม่มีการจัดการจะมีค่ามากที่สุดเนื่องจากมีความยืดหยุ่นมากที่สุดสำหรับคุณ อีกครั้งรหัสนี้เป็นเรื่องยุ่งยากและไม่ได้รับการจัดทำเป็นเอกสารโดยเฉพาะอย่างยิ่ง อย่างไรก็ตามก็สามารถทำได้ ขอแสดงความยินดีคุณกำลังทำรหัสแล้วและสามารถเริ่มทดสอบโค้ดของคุณได้ คุณอาจจำเป็นต้องแก้ไขโค้ดของคุณเพื่อจัดการกับสภาวะแบบเรียลไทม์ในข้อมูลสด ขึ้นอยู่กับตลาดที่คุณวางแผนที่จะค้าคุณจะต้องคิดว่าคุณจะจัดการกับการซื้อขายระหว่างรายงานการถือครองหลักทรัพย์ในชั่วข้ามคืนวงเงินซื้อขายรวมทั้งเมื่อการซื้อขายถูกระงับโดยการแลกเปลี่ยน สมมติว่าคุณได้ทำทั้งหมดนี้ขณะนี้คุณมีระบบการซื้อขายที่ผ่านการทดสอบด้านหลังใน NT อย่างที่ฉันพูดไม่ใช่เรื่องง่าย แต่ทำได้อย่างแน่นอน ต้องทำเช่นนี้เตรียมชั่วโมงและชั่วโมง (และชั่วโมง) ของการทำงานและการทดสอบ เมื่อฉันเริ่มต้นฉันต้องประเมินความพยายามที่ต้องเสียค่าใช้จ่าย 1.5k Views middot ดูคำ UpVotes middot ไม่ได้สำหรับการทำซ้ำวิธีการ backtest ระบบการค้าและหลีกเลี่ยงการโค้งเหมาะสมเพื่อตัดสินว่าดีระบบการค้าที่กำหนดควรจะทำงานในอนาคตเรา backtest มันเกี่ยวกับข้อมูลการตลาดที่ผ่านมา Backtesting ใช้กฎการซื้อขายกับข้อมูลที่ผ่านมาเพื่อประมาณว่ากฎเหล่านั้นจะมีผลอย่างไรหากเราได้ทำการซื้อขาย ผลลัพธ์ทางประวัติศาสตร์ที่สมมุติฐานดีไม่ได้รับประกันว่าชุดของกฎจะทำงานได้ดีในอนาคต อย่างไรก็ตามผลการดำเนินงานทางประวัติศาสตร์ในเชิงสมมุติที่น่าสงสารน่าจะหมายถึงระบบไม่ควรซื้อขายในเวลาจริง คุณค่าที่ได้รับจากการทำ backtesting มีรากฐานมาจากความเชื่อที่ว่าแนวโน้มทางประวัติศาสตร์ซ้ำ ๆ ผู้ค้าได้ทดสอบกลยุทธ์เกี่ยวกับข้อมูลทางประวัติศาสตร์สำหรับคนรุ่นแล้ว อย่างไรก็ตามการปฏิบัติกลายเป็นที่นิยมกับการถือกำเนิดของคอมพิวเตอร์ส่วนบุคคลและซอฟต์แวร์ทดสอบระบบที่สร้างขึ้นเอง เช่น System Writer ซึ่งพัฒนาขึ้นใน TradeStation ซอฟต์แวร์นี้และฐานข้อมูลข้อมูลย้อนหลังอนุญาตให้ผู้ที่ไม่มีพื้นฐานการเขียนโค้ดเพื่อทดสอบความคิดของระบบการซื้อขาย ความเข้าใจและการยอมรับระบบการค้าที่กว้างขึ้นรวมทั้งความยุ่งยากที่หลายคนประสบเมื่อพยายามสร้างระบบการซื้อขายด้วยตัวเองช่วยให้ตลาดระบบของบุคคลที่สามเติบโตขึ้นได้ตลอดช่วงทศวรรษที่ 1990 Futures Truth เป็น บริษัท อิสระที่ติดตามระบบการค้าที่มีจำหน่ายในท้องตลาดตั้งแต่ช่วงปี 1980 ขณะนี้มีการติดตามระบบมากกว่า 500 ระบบ ระบบซื้อขายสัญญาซื้อขายล่วงหน้าเป็นแบบเรียลไทม์ไม่ใช่ข้อมูลย้อนหลัง การทำเช่นนี้จะป้องกันไม่ให้มีการแก้ไขกฎตลอดเวลาและจำลองสถานการณ์การบังคับใช้กฎได้ดีขึ้นในสภาวะตลาดที่แท้จริงเช่นช่วงเวลาที่มีความผันผวนสูง ตามความสัมพันธดวยสัญญาซื้อขายลวงหนามีเพียง 45 ระบบที่ไดรับผลกําไรในระยะยาวในขณะที่มีเพียง 20 รายที่มีความเสี่ยงสูง อย่างไรก็ตามตัวเลขเหล่านี้น่าจะดีกว่าจำนวนประชากรที่แพร่หลายมากขึ้นเนื่องจากเฉพาะผู้ขายรายนั้นเท่านั้นที่มั่นใจในตรรกะของพวกเขาอย่างแท้จริงจึงได้นำไปสู่การวิเคราะห์ความจริงในอนาคตสำหรับการวิเคราะห์แบบเรียลไทม์และการวิจารณ์ของสาธารณชน ระบบจำนวนมากล้มเหลวเพราะขาดหลักฐานที่ถูกต้อง พารามิเตอร์เข้าและออกจะได้รับจากการทำเหมืองข้อมูล การทำเหมืองข้อมูลเพียงแค่สแกนข้อมูลทางประวัติศาสตร์สำหรับกฎที่จะใช้งานได้ในอดีต บ่อยครั้งที่กฎดังกล่าวพอดีกับอดีตและไม่มีความหวังในการทำงานดีกว่าการสุ่มข้อมูลที่มองไม่เห็น การพัฒนาระบบควรเริ่มต้นด้วยทฤษฎีที่สามารถทดสอบทดสอบและปรับแต่งโปรแกรมได้ แนวคิดนี้ยังหมายถึงมุมมองที่แตกต่างในการทดสอบระบบอีกด้วย: เป้าหมายของการทดสอบย้อนหลังไม่ได้เป็นการรวบรวมผลกำไรและสถิติการสูญเสียที่สมมุติฐาน เพื่อทดสอบความถูกต้องของทฤษฎีและความถูกต้องของกฎในการจับภาพหลักฐาน การทดสอบระบบเป็นกระบวนการที่มีหลายแง่มุมจากข้อมูลจนถึงระดับเวลาในการกำหนดสมมติฐานการเข้าสู่ข้อมูลเพื่อทำสัญญาเฉพาะและการควบคุมความเสี่ยง การไม่ปฏิบัติตามข้อใดข้อหนึ่งเหล่านี้อาจทำให้การทดสอบ mdash ถูกต้องหรือถูกต้องการจัดการกับพวกเขาสามารถสร้างผลลัพธ์ที่เหนือกว่าสิ่งที่เราจะทำได้ในเวลาจริง คุณต้องดำเนินการให้ถูกต้องหากคุณต้องการตรวจสอบความถูกต้องของ mdash หรือเมื่อเหมาะสมทำให้ระบบของคุณเป็นโมฆะ เครื่องมือการค้ามีสององค์ประกอบที่จะ backtesting: เครื่องมือ mdash ซอฟต์แวร์ที่เหมาะสมและข้อมูล mdash และวิธีการทางวิทยาศาสตร์เพื่อพัฒนาระบบโดยใช้เครื่องมือเหล่านั้น Letrsquos เริ่มต้นด้วยการดูเครื่องมือของการค้า มีตัวเลือกมากมายสำหรับทดสอบแนวคิดของคุณ พวกเขาแตกต่างกันในความสะดวกในการเปลี่ยนความคิดเป็นรหัสและวิธีที่พวกเขาจัดการกับรายละเอียดซึ่งอาจมีผลกระทบสำคัญกับผลลัพธ์ ตัวอย่างเช่นถ้าระบบป้อนคำสั่ง จำกัด ซอฟต์แวร์บางรายการจะบันทึกข้อมูลหากมีการสัมผัสราคาดังกล่าว อย่างไรก็ตามไม่มีหลักประกันใด ๆ ที่คำสั่งดังกล่าวจะได้รับการเติมเต็มในการซื้อขายจริงและไม่มีการรับประกันว่าจะได้รับรางวัล การเข้าสู่ระบบหยุดจะรับประกันรายการ แต่ไม่ใช่ราคา ปัญหาก็คือการบันทึกราคาที่แท้จริง แม้ว่าซอฟต์แวร์ที่ได้รับการพัฒนาอย่างมืออาชีพมากที่สุดจะไม่มีปัญหานี้อีกต่อไป แต่ก็ยังเป็นข้อกังวลสำหรับผู้ที่ทดสอบระบบด้วยตนเองในสเปรดชีตเช่น Microsoft Excel ตัวอย่างเช่นถ้าระบบซื้อ ณ จุดหยุดเท่ากับการปิดบวกหนึ่งในสามของช่วงเฉลี่ยในช่วงสามช่วงสุดท้ายและถ้าช่วงเฉลี่ยอยู่ที่ 10 เราก็จะซื้อที่ใกล้เคียงบวก 3.333 หากเราซื้อขาย E-mini SampP 500 จะซื้อขายในขนาด 0.25 tick ซึ่งหมายความว่าค่าความแตกต่างของรายการต้องสูงถึง 3.50 ผู้ประกอบการเริ่มต้นอาจไม่เข้าใจสิ่งนี้ถ้าใช้ตัวเลขที่บิดเบือนด้วยตนเองและเมื่อไม่นานมานี้โปรแกรมมืออาชีพจำนวนมากก็ทำผิดพลาดเหมือนกัน เมื่อเวลาผ่านไปข้อผิดพลาดดังกล่าวอาจเพิ่มความคลาดเคลื่อนที่มากขึ้นได้ อย่างไรก็ตามในภาพรวมรายละเอียดขั้นตอนดังกล่าวมีน้อย ปัญหาใหญ่คือข้อมูล วิธีการ backtest ระบบการซื้อขายสวัสดี อิ่มผู้ประกอบการ noobie และจนถึงขณะนี้ฉันได้รับบัญชี demo 5k forex ลงเหลือประมาณ 4k ในหนึ่งเดือน อิ่มไม่พอใจกับผลลัพธ์มากนัก แต่ก็ดี ฉันอ่านเกี่ยวกับระบบการซื้อขายหลายประการอาทิเช่น rapirforex, ระบบ forex ที่น่าทึ่ง, การท่อง, 123-froex, การซื้อขาย forex surefire และผลกำไรที่ระเบิดได้เพื่อชื่อไม่กี่ ฉันต้องการจะทดสอบระบบเหล่านั้นและระบบอื่นใดที่ฉันอาจใช้ข้อมูลการตลาดที่ผ่านมา Im primarly กำลังมองหาอัตราส่วนความสำเร็จสำหรับระบบ ach ฉันค้นหาข้อมูลในเน็ต แต่ฉันไม่สามารถหาอะไรที่สร้างสรรค์ได้ ซอฟต์แวร์อะไรที่ฉันต้องทำ ฉันจะได้รับข้อมูลตลาด forex แบบ forex ที่ใด เว็บไซต์ใด ๆ ที่ฉันควร chack out ขอบคุณล่วงหน้า. 30 ม. ค. 2548, 10:56 น. เข้าร่วม พ. ย. 2547 ไปที่ spreadtrade2win ซึ่งเป็นระบบและฟอรัมที่ยอดเยี่ยมและฟรีทั้งหมด 31 มกราคม 2005, 6:53 น. เข้าเป็นสมาชิก มี.ค. 2004 ข้อความอ้างอิง: แต่เดิมเขียนโดย aberry ไป spreadtrade2win เป็นระบบที่ดีและฟอรัมและฟรีทั้งหมด ซอฟต์แวร์ backtestting ดีคุณจะต้องทำโปรแกรมบางอย่างเพื่อใช้ tho (เป็นโปรแกรมไปไม่ว่าน่ากลัว) ข้อความอ้างอิง: แต่เดิมเขียนโดย SOCRATES มีมากในการสนทนาเกี่ยวกับการซื้อขายเว็บไซต์เกี่ยวกับหัวข้อของ backtesting เป็น แผนการนี้และทำให้งงงวยฉันอย่างมาก นอกจากนี้ยังมีการอภิปรายเกี่ยวกับระบบเป็นจำนวนมาก สิ่งที่ระบบเหล่านี้คุณกำลังพูดถึงดูเหมือนว่าฉันที่คุณอาจจะพูดถึงการตรวจสอบประสิทธิภาพของซอฟต์แวร์โดยเฉพาะ ที่ถูกต้องก็ยังดูเหมือนกับฉันคุณอาจจะพูดถึงคุณธรรมหรือ demirits ของวิธีการเฉพาะ เป็นที่ถูกต้องหรือไม่ใช่ Im พยายามทดสอบระบบในข้อมูลทางประวัติศาสตร์เพื่อหา ut ความถูกต้องในระยะยาว ระบบไม่ใช่ซอฟต์แวร์ ระบบการซื้อขายของตนนั่นคือควรจะชี้ให้เห็นสัญญาณ buysell ที่ดีซึ่งอาจมีความแม่นยำสูงที่สุดจากการวิเคราะห์ทางเทคนิค และ BTW im โปรแกรมเมอร์โดยการศึกษาเพื่อการเขียนโปรแกรมไม่เป็นปัญหาสำหรับฉัน แต่เดิมเขียนโดย SOCRATES มีมากในการสนทนาเกี่ยวกับการซื้อขายเว็บไซต์เกี่ยวกับหัวข้อของ backtesting เป็น แผนการนี้และทำให้งงงวยฉันอย่างมาก นอกจากนี้ยังมีการอภิปรายเกี่ยวกับระบบเป็นจำนวนมาก สิ่งที่ระบบเหล่านี้คุณกำลังพูดถึงดูเหมือนว่าฉันที่คุณอาจจะพูดถึงการตรวจสอบประสิทธิภาพของซอฟต์แวร์โดยเฉพาะ ที่ถูกต้องก็ยังดูเหมือนกับฉันคุณอาจจะพูดถึงคุณธรรมหรือ demirits ของวิธีการเฉพาะ เป็นที่ถูกต้องหรือไม่ฉันลาดเทพูดสำหรับโปสเตอร์อื่น ๆ ผมเองใช้ backtesting ซอฟต์แวร์เป็นวิธีการทดสอบและเรียนรู้เกี่ยวกับกลยุทธ์ที่แตกต่างกัน ฉันยังเป็นนักเขียนโปรแกรมด้วยการค้าขายดังนั้นวิธีที่ฉันคุ้นเคยและสะดวกสบายในการทดสอบความคิดกับข้อมูลของแท้ ฉันไม่เข้าใจว่าเพียงเพราะกลยุทธ์การทำงานในอดีตมันจะทำงานในอนาคต แต่ฉันคิดว่ามันมีโอกาสมากขึ้นในการทำเช่นนั้น

No comments:

Post a Comment