การออกแบบ แอพลิเคชัน การซื้อขาย อัตโนมัติ ใน netbeans รวย ไคลเอนต์ แพลตฟอร์ม ( ตอนที่ 1)




การออกแบบแอพลิเคชันการซื้อขายอัตโนมัติใน Netbeans รวยไคลเอนต์แพลตฟอร์ม (ตอนที่ 1) โซน DevOps จะมาถึงคุณในความร่วมมือกับ Librato ตรวจสอบเอกสารของ Librato ในการเลือกโซลูชันการตรวจสอบเมฆ ที่ผ่านมา 10 ปีโอกาสใหม่ ๆ ได้เปิดในสต็อกฟิวเจอร์สและตลาดสกุลเงินที่จะอนุญาตให้ผู้ค้าปลีกสามารถในการผลิตกลยุทธ์การซื้อขายของตัวเองโดยอัตโนมัติซึ่งครั้งหนึ่งเคยเพียงดินแดนของกองทุนป้องกันความเสี่ยงและธนาคารเพื่อการลงทุน โบรกเกอร์อินเทอร์เป็นหนึ่งใน บริษัท นายหน้าเป็นครั้งแรกที่จะนำเสนอใน Java API ให้กับลูกค้ารายย่อย สร้างสรรค์จินตนาการเป็นวิธีสำหรับนักพัฒนาเพื่อเพิ่มอินเทอร์เวิร์คสเตชั่โบรกเกอร์ซื้อขาย (TWS) โปรแกรมคอมพิวเตอร์ที่มีคุณสมบัติเช่นการสร้างแผนภูมิหรือบันทึกการรักษาที่ API ได้รับความนิยมเป็นวิธีการทำงานโดยอัตโนมัติกลยุทธ์การซื้อขาย ในการทำซ้ำครั้งแรกของฉันในการพัฒนากลยุทธ์การซื้อขายและซอฟแวร์โดยอัตโนมัติธุรกิจการค้าที่ฉันสร้างโปรแกรมคอมพิวเตอร์จาวาโดยใช้ส่วนประกอบ Swing ซึ่งจะตรวจสอบหุ้นตลอดการซื้อขายวันและสถานที่ที่เมื่อพารามิเตอร์บางอย่างได้พบแล้วออกจากธุรกิจการค้าที่ใกล้ชิดของ วันซื้อขาย ซอฟต์แวร์ที่ทำงานได้ดีและมันก็เพียงพอสำหรับกลยุทธ์ที่ได้รับการออกแบบเพื่อการค้า แต่มันก็ไม่ได้ขยายและความพยายามที่จะใช้กลยุทธ์การค้าใหม่ได้โดยอัตโนมัติเช่นเดียวกับการเชื่อมต่อกับบัญชีซื้อขายหลักทรัพย์ที่แตกต่างกันพิสูจน์ยากและยุ่งยาก นอกจากนี้ยังมีข้อ จำกัด อยู่กับจำนวนหุ้นที่จะได้รับการตรวจสอบผ่านทางข้อมูลของโบรกเกอร์ฟีดเพื่อให้ซอฟแวร์จะต้องสามารถที่จะรองรับแบบ real-time ฟีดข้อมูลการตลาดจากแหล่งอื่น ๆ นอกเหนือไปจากฟีดข้อมูลของโบรกเกอร์ ผมได้รับการแนะนำให้รู้จักกับ Netbeans รวยไคลเอนต์แพลตฟอร์ม (RCP) สองสามปีที่ผ่านมาและได้ตัดสินใจที่จะเริ่มต้นเมื่อเร็ว ๆ นี้ porting ใบสมัครของฉันไปยังแพลตฟอร์มเนื่องจากการจำนวนมากของข้อได้เปรียบที่จะให้ Netbeans RCP ถูกสร้างขึ้นบนหลักการออกแบบโมดูลที่ช่วยให้นักพัฒนาที่จะกำหนด APIs สำหรับคุณสมบัติที่เป็นนามธรรมและจากนั้นให้โมดูลที่อาจมีการใช้งานที่แตกต่างกันของ API ที่ช่วยให้การประยุกต์ใช้ในการเลือกที่รันไทม์ซึ่งการดำเนินงานที่จะใช้ ไม่เพียง แต่จะจัดให้มีการทำความสะอาดการออกแบบโดยการแยกความกังวล แต่โดยใช้การค้นหา Netbeans API ก็ยัง decouples แอพลิเคชันและชิ้นส่วนต่างๆออกจากกัน มีคุณสมบัติอื่น ๆ อีกมากมายที่สามารถ leveraged รวมทั้งในตัวระบบ Windowing แก้ไขข้อความ, explorer แฟ้มแถบเครื่องมือและส่วนประกอบตารางตารางต้นไม้เช่นเดียวกับการดำเนินการของ API เป็น (เพียงเพื่อชื่อไม่กี่) แอพลิเคชันซื้อขายจะทำให้การใช้งานของระบบโมดูล RCP การกำหนด APIs นามธรรมกับการทำงานต่อไปนี้: สถานที่และยกเลิกคำสั่งซื้อสำหรับหุ้นตัวเลือกฟิวเจอร์สหรือสกุลเงิน ให้แจ้งเตือนเหตุการณ์เมื่อคำสั่งซื้อจะเต็มไป ตรวจสอบยอดเงินสดยอดเงินในบัญชี ข้อมูลการตลาด API สมัครสมาชิกข้อมูลอ้างเวลาจริงสำหรับสัญลักษณ์ใด ๆ สมัครสมาชิกระดับ 2 ข้อมูล (ความลึกของตลาด / สั่งซื้อหนังสือ) สำหรับสัญลักษณ์ใด ๆ API ข้อมูลที่สำคัญทางประวัติศาสตร์ ขอข้อมูลราคาประวัติศาสตร์สัญลักษณ์ใด ๆ กลยุทธ์การซื้อขาย API กำหนดชุดของกฎสำหรับการเข้าและออกจากการซื้อขาย ความสามารถในการใช้นายหน้าใด ๆ ข้อมูลการตลาดและข้อมูลทางประวัติศาสตร์การใช้งาน API เพื่อที่จะทำให้การตัดสินใจซื้อขาย การดำเนินงานหลักสำหรับนายหน้าข้อมูลการตลาดและโมดูลข้อมูล API ประวัติศาสตร์จะใช้อินเทอร์โบรคเกอร์ของ Java API แต่ใช้งานอื่น ๆ นอกจากนี้ยังสามารถสร้างเป็นโมดูล Netbeans แล้วนำเข้ามาประยุกต์ใช้ในการซื้อขายเพื่อให้กลยุทธ์การซื้อขายสามารถใช้ประโยชน์จากข้อมูลการตลาดจาก แหล่งที่มาที่แตกต่างกันในกรณีที่จำเป็น กลยุทธ์การซื้อขายใหม่ที่สามารถสร้างเป็นโมดูล Netbeans การใช้กลยุทธ์การซื้อขาย API ซึ่งแต่ละกลยุทธ์สามารถใช้อย่างใดอย่างหนึ่งของการใช้งานของข้อมูลต่างๆและ API นายหน้า ใช้ค้นหา Netbeans API กลยุทธ์สามารถสอบถามแพลตฟอร์มที่จะได้รับรายชื่อของการใช้งานทั้งหมดของ APIs นายหน้าและข้อมูลการตลาดการให้บริการสำหรับการมีเพศสัมพันธ์ระหว่างหลวม APIs และช่วยให้ผู้ใช้สามารถเลือกที่จะใช้การดำเนินการที่รันไทม์ ด้านล่างเป็นแผนภาพแสดงองค์กรของส่วนประกอบต่างๆ API ของโปรแกรมนี้: โพสต์ในอนาคตผมจะเข้าไปดูรายละเอียดเพิ่มเติมเกี่ยวกับวิธีการสร้างปลั๊กอิน API สำหรับ Netbeans RCP เช่นเดียวกับการแสดงวิธีการสร้างการดำเนินการที่เป็นรูปธรรมของเอพีไอ ในภาพข้างต้นนายหน้านามธรรมข้อมูลการตลาดและ API กลยุทธ์การซื้อขายจะถูกติดตั้งลงใน RCP เป็นปลั๊กอิน โบรกเกอร์ API มีการดำเนินการเดียวสำหรับโบรกเกอร์อินเทอร์ที่จุดในเวลานี้ ข้อมูลตลาด API มีปลั๊กอินที่ให้การใช้งานสำหรับข้อมูลการตลาดเวลาจริงจากการเงิน yahoo เช่นเดียวกับอินเตอร์แอคทีโบรกเกอร์เวลาจริงข้อมูลการตลาด สุดท้าย API กลยุทธ์การซื้อขายมีการใช้งาน 2 ในตัวอย่างนี้ กลยุทธ์แรกชื่อ "จำกัด ผู้ซื้อ" จะดูราคาประมาณ 800 หุ้นและเพื่อขีด จำกัด ของสถ​​านที่ที่จะซื้อเมื่อเงื่อนไขตรง กลยุทธ์ที่สองในตัวอย่างข้างต้นชื่อ AUD / NZD ยุทธศาสตร์สกุลเงินจะตรวจสอบอัตราแลกเปลี่ยนของดอลลาร์ออสเตรเลียและนิวซีแลนด์และสั่งซื้อสินค้าที่จะซื้อหรือขายเมื่อเงื่อนไขตรง ที่จุดในเวลานี้แอพลิเคชันที่มีการทำงานและจะใช้อินเทอร์โบรกเกอร์นายหน้าซื้อขายหลักทรัพย์เป็นหลักเช่นเดียวกับผู้ให้บริการข้อมูลการตลาด AUD / NZD กลยุทธ์การซื้อขายเป็นงานที่มีการซื้อขายผ่านการประยุกต์ใช้แม้จะมีส่วนติดต่อผู้ใช้เป็นพื้นฐานซึ่งเป็นข้อความเผยแพร่ไปยังพื้นที่ข้อความภายในแท็บหลักของกลยุทธ์ ภาพหน้าจอด้านล่างแสดงให้เห็นถึงโบรกเกอร์ Interactive "ผู้ซื้อขาย Workstation" แอพลิเคชันที่ใช้สีดำขนาดใหญ่ (ซึ่งเป็น app สวิง Java) เช่นเดียวกับแอพลิเคชันซื้อขาย Netbeans RCP อัตโนมัติซึ่งเป็นแอพลิเคชันสีขาวขนาดเล็กที่มีพื้นที่ข้อความขนาดใหญ่ ในภาพด้านล่างใบสมัครอยู่ในขณะนี้การตรวจสอบราคาและการวางการซื้อขายสำหรับดอลลาร์ออสเตรเลียดอลลาร์นิวซีแลนด์ดอลลาร์ฮ่องกงและสกุลเงินเยนของญี่ปุ่น โพสต์นี้เป็นเพียงภาพรวมอยู่ในระดับสูงในการออกแบบของแอพลิเคชัน RCP เพื่อการค้าในตลาดการเงิน ส่วนในอนาคตที่จะชุดนี้จะรวมถึงข้อมูลเพิ่มเติมเกี่ยวกับวิธีการใช้ API ที่เป็นนามธรรมและทำให้พวกเขาสามารถใช้ได้สำหรับส่วนอื่น ๆ ของโปรแกรมที่จะใช้ผ่านการค้นหา Netbeans API เช่นเดียวกับการทำงานร่วมกับบางส่วนขององค์ประกอบ UI Netbeans มาพร้อมกับแพลตฟอร์มเช่นแท็บ ต้นไม้และตารางแสดงให้เห็นว่าง่ายก็คือการทำให้ข้อมูลเดียวกันผ่านมุมมองที่แตกต่างกันเหล่านี้โดยใช้โหนด Netbeans API นอกจากนี้ฉันต้องการที่จะรวมองค์ประกอบบางอย่าง JavaFX ลงในใบสมัครเช่นชิ้นส่วนการสร้างแผนภูมิที่สามารถพบได้ในห้องสมุด JavaFX หลักซึ่งจะช่วยให้การแสดงกราฟิกของบางส่วนของข้อมูลกลยุทธ์มีการตรวจสอบซึ่งจะมีน้อยมาก ใช้งานง่ายกว่าพื้นที่ข้อความที่มีขนาดใหญ่ในปัจจุบัน รวมองค์ประกอบ JavaFX ภายในโปรแกรมจะได้รับการบันทึกไว้ในการโพสต์ในอนาคตได้เป็นอย่างดี คุณสามารถปฏิบัติตามการค้าที่เกี่ยวข้องกับบล็อกของฉันถ้าคุณต้องการที่จะเห็นผลการซื้อขายจริงของการประยุกต์ใช้กับการกลั่นที่: