Thursday 24 August 2017

Clojure ซื้อขาย ระบบ


ห้องสมุดข้อมูลทางเทคนิคสถาปัตยกรรมและรูปแบบข้อมูลขนาดใหญ่ส่วนที่ 4: การทำความเข้าใจเกี่ยวกับรูปแบบอะตอมและคอมโพสิตสำหรับโซลูชันข้อมูลขนาดใหญ่รูปแบบที่กล่าวถึงในบทความนี้ช่วยในการกำหนดพารามิเตอร์ของโซลูชันข้อมูลขนาดใหญ่ บทความนี้กล่าวถึงปัญหาและวิธีแก้ไขปัญหาข้อมูลขนาดใหญ่ที่เกิดขึ้นบ่อยครั้ง รูปแบบอะตอมอธิบายถึงแนวทางทั่วไปสำหรับการบริโภคการประมวลผลการเข้าถึงและการจัดเก็บข้อมูลขนาดใหญ่ รูปแบบคอมโพสิตซึ่งประกอบด้วยรูปแบบอะตอมถูกจัดแบ่งตามขอบเขตของโซลูชันข้อมูลขนาดใหญ่ เนื่องจากแต่ละรูปแบบประกอบมีหลายมิติมีรูปแบบต่างๆกันหลายรูปแบบ รูปแบบนี้ช่วยให้ผู้ใช้ทางธุรกิจและทางเทคนิคสามารถใช้แนวทางที่มีโครงสร้างเพื่อสร้างขอบเขตและกำหนดโซลูชันระดับสูงสำหรับปัญหาข้อมูลขนาดใหญ่ สถาปัตยกรรมและรูปแบบข้อมูลขนาดใหญ่ส่วนที่ 3: การทำความเข้าใจเกี่ยวกับเลเยอร์สถาปัตยกรรมของโซลูชันข้อมูลขนาดใหญ่ชั้นลอจิกของโซลูชันข้อมูลขนาดใหญ่ช่วยในการกำหนดและจัดประเภทส่วนประกอบต่าง ๆ ที่จำเป็นสำหรับโซลูชันข้อมูลขนาดใหญ่ที่ต้องตอบสนองความต้องการในการทำงานและที่ไม่ใช่หน้าที่ กรณีธุรกิจที่กำหนด ชุดชั้นลอจิคัลนี้แสดงองค์ประกอบที่สำคัญของโซลูชันข้อมูลขนาดใหญ่จากจุดที่ข้อมูลได้มาจากแหล่งข้อมูลต่างๆเพื่อการวิเคราะห์ที่จำเป็นในการทำความเข้าใจเกี่ยวกับกระบวนการอุปกรณ์และมนุษย์ที่ต้องการข้อมูลเชิงลึก สถาปัตยกรรมและรูปแบบข้อมูลขนาดใหญ่ส่วนที่ 1: การจำแนกประเภทข้อมูลขนาดใหญ่และสถาปัตยกรรมปัญหาด้านข้อมูลขนาดใหญ่มักจะมีความซับซ้อนในการวิเคราะห์และแก้ปัญหา ปริมาณข้อมูลความเร็วและความหลากหลายของข้อมูลทำให้ยากที่จะดึงข้อมูลและข้อมูลเชิงลึกของธุรกิจ ขั้นตอนแรกที่ดีคือการจัดแบ่งปัญหาข้อมูลขนาดใหญ่ตามรูปแบบของข้อมูลที่ต้องดำเนินการประเภทของการวิเคราะห์ที่จะใช้เทคนิคการประมวลผลในที่ทำงานและแหล่งข้อมูลสำหรับข้อมูลที่ระบบเป้าหมายต้องการ เพื่อรับโหลดประมวลผลวิเคราะห์และจัดเก็บ สถาปัตยกรรมและรูปแบบข้อมูลขนาดใหญ่ส่วนที่ 2: วิธีการทราบว่าโซลูชันข้อมูลขนาดใหญ่เหมาะสมกับองค์กรของคุณบทความนี้อธิบายถึงแนวทางที่ใช้มิติข้อมูลสำหรับการประเมินความมีชีวิตของโซลูชันข้อมูลขนาดใหญ่ เมื่อตอบคำถามที่สำรวจแต่ละมิติให้ใช้สิ่งที่คุณรู้เกี่ยวกับสภาพแวดล้อมของคุณเองเพื่อพิจารณาว่าโซลูชันข้อมูลขนาดใหญ่เหมาะสมหรือไม่ การดูอย่างรอบคอบในแต่ละมิติจะให้ข้อมูลเกี่ยวกับว่าเวลาในการพัฒนาบริการข้อมูลขนาดใหญ่ของคุณหรือไม่ สถาปัตยกรรมและรูปแบบข้อมูลขนาดใหญ่ส่วนที่ 5: ใช้รูปแบบโซลูชันกับปัญหาข้อมูลขนาดใหญ่ของคุณและเลือกผลิตภัณฑ์ที่จะใช้งานได้โดยใช้แนวทางตามภาพจำลองบทความนี้จะแสดงรูปแบบโซลูชันที่สามารถช่วยในการกำหนดโซลูชันข้อมูลขนาดใหญ่ได้ แต่ละสถานการณ์เริ่มต้นด้วยปัญหาทางธุรกิจและอธิบายว่าเหตุใดโซลูชันข้อมูลขนาดใหญ่จึงจำเป็นต้องใช้ มีการใช้รูปแบบการแก้ปัญหาเฉพาะ (ประกอบด้วยรูปแบบอะตอมและคอมโพสิต) กับภาพจำลองทางธุรกิจ วิธีการทีละขั้นตอนนี้ช่วยระบุองค์ประกอบที่จำเป็นสำหรับการแก้ปัญหา ในตอนท้ายของบทความแนะนำผลิตภัณฑ์และเครื่องมือโดยทั่วไปจำนวนการนับครั้งแรก ดูแลเมื่อกรอกใบสมัคร คณะกรรมการการรับเข้าเรียนของเราเข้าร่วมประชุมสัปดาห์ละครั้งเพื่อประเมินผู้สมัคร ผู้สมัครที่ประสบความสำเร็จมากที่สุดโม้การรวมกันของนักวิชาการที่แข็งแกร่งผลประโยชน์นอกหลักสูตรและความปรารถนาที่จะเก่งในการประกอบอาชีพในอนาคตของพวกเขาสถานที่ในโปรแกรมของเราจะได้รับการจัดสรรตามลำดับก่อนหลัง แจ้งให้คุณทราบภายในสิบวันทำการหากคุณประสบความสำเร็จ อยู่ทำงานเรียนแอมป์เดินทางไปต่างประเทศ ไม่ประนีประนอม ฝึกงานเรียนรู้นำไปสู่การเติบโตของแอมป์สำรวจในเมืองทั่วโลก จับวันพรุ่งนี้ปลอดภัยในวันพรุ่งนี้ ไม่ประนีประนอม ประสบการณ์ของแอมป์ตลอดอายุการใช้งานที่มีต่อคุณตลอดอายุการใช้งาน สำรวจแอมป์ช่วยเร่งการทำงานของคุณ ไม่ประนีประนอม ค้นพบแอมป์ที่มีศักยภาพของคุณเพื่อไปสู่เส้นทาง เราเป็นสมาชิกที่น่าภาคภูมิใจของสมาคมต่อไปนี้: CI เป็นผู้ให้บริการการเรียนรู้ที่รวดเร็ว เราให้บริการโปรแกรมการศึกษาเชิงประสบการณ์สำหรับนักศึกษาวิทยาลัยผู้สำเร็จการศึกษาล่าสุดและผู้ที่เปลี่ยนอาชีพในช่วงเริ่มต้นอัปเดต: ฉันอัปเดตโค้ดเพื่อให้ทำงานกับ Oandas API ใหม่ ได้ที่นี่เวลาที่จะพูดคุยเกี่ยวกับโบรกเกอร์วิธีการวางการค้าทางโปรแกรมและที่สำคัญที่สุดคือวิธีที่จะไม่ได้รับการหลอกลวง โบรกเกอร์เป็นอะไรที่มากกว่า บริษัท ที่อนุญาตให้คุณทำการค้า (ซื้อหรือขาย) สินทรัพย์ในตลาดผ่านแพลตฟอร์มของตน สิ่งที่สำคัญมากสำหรับการจัดจำหน่ายคือ: โบรกเกอร์เสนอ API เพื่อให้เราสามารถวางคำสั่งซื้อได้คุณสามารถมีบัญชี demo เพื่อเรียกใช้สภาวะแวดล้อมและการทดลองของคุณการแพร่กระจายมีขนาดเล็กที่สุดเท่าที่จะเป็นไปได้ในกรณีของเราเราไม่ค่อยสนใจเรื่องการแพร่กระจาย เนื่องจากเราไม่ต้องทำ Trading High Frequency เร็ว ๆ นี้ แม้โบรกเกอร์จะได้รับการควบคุม แต่ก็มีเหตุการณ์เกิดขึ้นในช่วงสองสามปีที่ผ่านมาเนื่องจากโบรกเกอร์ถูกพับขึ้นเนื่องจากเงื่อนไขบางประการ ระมัดระวังมากหากไม่มีความคิดเห็นของโบรกเกอร์บนอินเทอร์เน็ต (หรือส่วนใหญ่ไม่ดี) ถ้าโบรกเกอร์ให้คุณใช้ประโยชน์จากความบ้าคลั่ง (เช่น 1: 200) หากโบรกเกอร์น่าจะอยู่ในประเทศที่แปลกมากสิ่งที่อาจเกิดขึ้น คือคุณเริ่มต้นทำเงินบางส่วนและคุณ arent สามารถดึงพวกเขาออก อย่างจริงจัง. สถานการณ์เครียดสุด ๆ แต่ให้เปลี่ยนเป็นบันทึกที่มีความสุขมากขึ้นซึ่งกำลังเปิดบัญชีและวางการค้าแบบเป็นโปรแกรมครั้งแรกของเรา Whooha ฉันใช้ Oanda เป็นนายหน้าซื้อขายหลักทรัพย์ (ฉันไม่เกี่ยวข้องกับพวกเขา) และพวกเขามีดีดี API, ห้องสมุดใน github และบัญชีสาธิตฟรี หลังจากที่คุณลงชื่อเข้าใช้บัญชีสาธิตของคุณไปที่ Manage API Access ที่นั่นคุณสามารถหาคีย์ API ของคุณซึ่งเราจะใช้ในระบบของเราเพื่อวางธุรกิจการค้า ทำให้แน่ใจว่าคุณไม่ได้แบ่งปันคีย์นี้ รหัสนี้เป็นและบทความอื่น ๆ ทั้งหมดอยู่ใน github และคุณสามารถติดตั้งและเรียกใช้มันสวยได้ง่าย ปรับปรุง: Oanda เปิดตัวเครื่องมือเรียกใหม่ (kickass) ที่เรียกว่า v20 และได้เปิดตัว API ใหม่ (ปรับปรุง) โพสต์นี้ได้รับการอัปเดตเพื่อใช้ API ใหม่ แต่ถ้า (ด้วยเหตุผลใดก็ตาม) คุณต้องการตรวจสอบรหัสเดิมอยู่ที่นี่ คุณโชคดีที่การเชื่อมต่อกับ Oanda ต้องการไฟล์ conf ซึ่งคุณสามารถสร้างโดยใช้สคริปต์ที่ Oanda มีให้หรือคุณสามารถสร้างได้เอง เหตุผลที่คุณต้องการที่ก่อนอื่นเมื่อมันมาถึงข้อมูลประจำตัว (และเงินของฉัน) ฉันชอบที่จะรู้ทุกอย่างที่เกิดขึ้น และฉันไม่ต้องการติดตั้ง PyYAML เพียงเพื่ออ่านไฟล์ conf รู้สึกอิสระที่จะใช้วิธีใดวิธีหนึ่ง ตอนนี้เตรียมที่จะประหลาดใจ โค้ดตรงไปตรงมา เราเริ่มต้น API: และตอนนี้ให้สั่งซื้อ (ซื้อ 5000 หน่วยของ EURUSD) ตรวจสอบราคาปัจจุบันเป็นเรื่องง่ายง่ายสุด อย่ากังวลกับสิ่งที่ EURUSD เป็นหรือจำนวนหน่วยที่เราจะซื้อหรือลำดับตลาดคืออะไร ตอนนี้เราได้วางการค้าขายครั้งแรกจากแล็ปท็อปของเราและเราจะสร้าง API ของเราเองเพื่อวางธุรกิจการค้า สิ่งที่น่าสนใจคุณสามารถอ่านเอกสาร Oandas ได้ที่นี่เพื่อดูว่ามีอะไรอีกบ้างที่คุณสามารถทำอะไรกับ API ของพวกเขาและค้นหาห้องสมุด Python ได้ที่นี่ตัวอย่างของตัวอย่างจากหน้า Oandas github ที่นี่ มาถึงต่อไปการเชื่อมต่อกับระบบ alturading LIVE จริงทำงานจาก RaspberryPI ของฉันที่บ้าน คุณจะสามารถดูโปรแกรมสุดท้าย (เกือบ) ที่กำลังทำงานและพูดคุยเกี่ยวกับโฟและกลยุทธ์ได้ดีขึ้น หากคุณมีข้อเสนอแนะเพิ่มเติมให้ส่ง Ping ไปที่ jonromero หรือสมัครรับจดหมายข่าว Outro กฎหมาย นี่คือการสอนด้านวิศวกรรมเกี่ยวกับวิธีการสร้างแพลตฟอร์มที่มีการปรับรุ่นสำหรับการทดลองและความสนุก ข้อเสนอแนะใด ๆ ที่นี่ไม่ใช่คำแนะนำทางการเงิน หากคุณสูญเสียเงินทั้งหมด (หรือทั้งหมด) เนื่องจากคุณทำตามคำแนะนำด้านการค้าหรือใช้ระบบนี้ในการผลิตคุณไม่สามารถตำหนิบล็อกแบบสุ่มนี้ (และฉัน) ได้ เพลิดเพลินกับความเสี่ยงของคุณเอง นี่เป็นวิธีการสร้างกลยุทธ์การทำแบบฝึกหัดของคุณเอง - ฉบับ Ethereum และไม่ใช่โพสต์บล็อกที่รวดเร็ว นอกจากนี้ยังเป็นตัวอย่างที่แท้จริงกับผลตอบแทนที่แท้จริง (และข้อผิดพลาดในการผลิตจริงที่ทำให้ฉันต้องเสียค่าใช้จ่าย) ซึ่งคุณสามารถดูวิธีระบุโอกาสได้ว่าเหตุใดการจัดงานจึงน่ากลัวและเหตุผลที่การจัดการความเสี่ยงสามารถบันทึกตูดของคุณได้ ฉันได้คำถามนี้เกือบทุกวัน ฉันจะหากลยุทธ์ที่ดีได้อย่างไรฉันสามารถสร้างตัวฉันเองได้อย่างไรฉันจำเป็นต้องมีปริญญาเอกด้านคณิตศาสตร์สถิติ Newsflash: ถ้าฉันสามารถเขียนกลยุทธ์ได้ทุกคนสามารถเขียนกลยุทธ์ได้ เชื่อถือฉันในที่ เคล็ดลับเพียงอย่างเดียวคือการหาแบบง่ายๆ การอัปเดต: โพสต์นี้ได้รับการเขียนใหม่อย่างน้อยห้าครั้ง (เป็นบทละครของ DAO) และเป็นตัวอย่างที่สมบูรณ์แบบของกลยุทธ์ที่ทำแบบเต็มวง ผมเริ่มมีส่วนร่วมกับ Ethereum ตั้งแต่เริ่มแรกเนื่องจากผมชอบเรียกใช้อัลกอริทึมของคุณในสิ่งที่ blockchain เมื่อ TheDAO ออกมาฉันอ่านทุกอย่างเกี่ยวกับเรื่องนี้และชอบความคิด คุณไม่จำเป็นต้องเข้าใจสิ่งที่ Ethereum, theDAO, blockchain อยู่ที่จุดนี้ (ฉันสัญญาว่าฉันจะเดินบนโพสต์อื่น) ความคิดเดียวกันนำไปใช้กับโฟหุ้นแม้ลูก Pokemon สี่ขั้นตอนของฉัน - กัปตันที่เห็นได้ชัด - ระบบผมเองมีวิธีเฉพาะที่ฉันทำงาน ขั้นตอนแรก . ระบุความคิด ความคิดของฉันในกรณีนี้คือว่ามีคู่ของตลาดหุ้นที่เสนอ Ethereum และ DAO tokens เกิดอะไรขึ้นถ้ามีการเก็งกำไรระหว่างขั้นตอนที่สอง ทดสอบความคิดด้วยตนเอง ถ้ามีอะไรบางอย่างทำงานฉันจะบางอย่าง ทั้งหมดที่ฉันต้องทำคือการทำตามขั้นตอนทั้งหมดด้วยตนเองและเขียนค่าธรรมเนียมใด ๆ เงื่อนไขหรือสิ่งที่ควรได้รับการจัดทำเป็นเอกสาร ขั้นตอนที่สาม อัตโนมัติอัลกอริธึมนี้ไม่ใช่ขั้นตอนการซื้อขายความถี่สูง มีความเสี่ยงเป็นจำนวนมาก (ซึ่งคุณสามารถกำจัดได้เช่นกันดูภายหลัง) แต่สิ่งที่ฉันทำได้ก็สามารถทำได้ด้วยตนเอง ปัญหาคือฉันต้องใช้เวลาทั้งหมดอยู่ตรงหน้าคอมพิวเตอร์ตรวจสอบว่ามีเงื่อนไขการเก็งกำไรหรือไม่และถ้ามีอยู่ฉันต้องทำตัวให้เร็วและปราศจากข้อพิพาท โอ้ฉันต้องชักชวนให้เพื่อนของฉันทั้งห้าคนเข้ารับตำแหน่งนี้ เรื่องยาวสั้น ๆ ผมใช้เวลาเขียนวัน Presidents Day เป็นโปรแกรมง่ายๆที่จะเล่นซ้ำขั้นตอนคู่มือทั้งหมดของฉัน โปรแกรมจะพังและไม่เกิน 100 บรรทัดของรหัส นี่คือขั้นตอนการรวบรวมข้อมูลที่ฉันเห็นว่ามีประโยชน์ที่อัลกอริทึมสามารถให้ฉันได้หรือไม่ ข้อดีคืออะไรบางอย่างที่เป็นแบบอัตโนมัติและเรียกใช้ 1000 ครั้งต่อวินาทีหรือ 1000 ครั้งแบบขนานสิ่งที่คิดเร็วกว่าที่ฉันสามารถทำได้บางสิ่งบางอย่างที่ไม่มีความรู้สึกในการขันระบบของฉันหากมีอย่างน้อยหนึ่งเงื่อนไขขึ้นไปพบกันฉันจะ เริ่มต้นสร้างและเขียนใหม่ algo ขั้นตอนที่สี่ ทั้งหมดในฉัน kidding และคุณจะเห็นในบิตว่าทำไมการจัดการความเสี่ยงเป็นสิ่งสำคัญสุดในธุรกิจนี้ ช่วยพูดคุยกันสักหน่อยเกี่ยวกับการเก็งกำไรนี้ ความคิดคือ: ฉันสงสัยว่า Kraken และ Shapeshift มีราคาที่แตกต่างกันสำหรับสินทรัพย์เดียวกัน นี่คือกรณีการเก็งกำไรแบบคลาสสิก (Kraken และ Shapeshift คือการแลกเปลี่ยน) ฉันสามารถแลกเปลี่ยน DAO สำหรับ ETH เมื่อ Kraken โอน ETH เพื่อ Shapeshift แลกเปลี่ยน ETH สำหรับ DAO และส่งกลับไป Kraken และเนื่องจาก inconsintencies ราคาฉันจะท้าย DAO กว่าฉันเริ่มต้นเริ่มต้นความเสี่ยงเงินชนิดที่ดีที่สุดของเงิน . คุณสามารถสร้างรายได้ตราบเท่าที่ ETHDAO จาก Kraken DAOETH จาก ShapeShift gt 1 (ค่าธรรมเนียมแก๊ส) สูตรง่าย ๆ ถูกต้องทุกๆวัฏจักรคือการคืนทุน 2 ถึง 10 ครั้ง หลังจากที่ฉันเริ่มตีขีด จำกัด ของ Shapeshift และฉันต้องทำให้การดำเนินการนี้ทำงานแบบขนาน คำถามคือสิ่งที่คุณจะทำถ้าคุณมีอัลกอริทึมที่ทำให้คุณมีเงิน 10 จากทุกๆ 20 นาที สิ่งที่โง่ที่สุดที่คุณสามารถทำได้คือใส่เงินเป็นจำนวนมาก หากคุณไม่คุ้นเคยกับคำ hybris กรีก พิจารณาตัวเองโชคดี Hybris คือเมื่อคุณคิดว่าคุณไม่สามารถอยู่ยงคงกระพันดีกว่าพระเจ้า และนี่คือที่ใหญ่ที่สุด NO NO คุณสามารถทำในการซื้อขาย หลังจากผ่านไปสองสัปดาห์ theDAO ถูกแฮ็ก 160 ล้านดอลลาร์ถูกโจรกรรม (หรือควรจะพูดว่าแข็ง) และไม่มีใครรู้ว่ากำลังจะเกิดอะไรขึ้น สำหรับฉันสิ่งนี้เกิดขึ้น 10 นาทีก่อนขึ้นเครื่องบินเพื่อบินไปนิวยอร์ก Hybris หรือเป็นคนในสหรัฐอเมริกาพูด: Fuck ฉันฉลาด (โชคดี) พอที่จะมีนิสัยการบริหารความเสี่ยงที่ดี (ขอบคุณ Forex) ฉันไม่เคยเคยมีความเสี่ยงมากขึ้นว่า 2 ทุนของฉันแม้ว่าจะดูเหมือนว่าชนิดที่ดีที่สุดของการจัดการ โชคดีที่เงินถูกเรียกคืนและฉันสามารถถอนตัวออก DAO ไปยัง Ethereum (แต่ใช่ฉันซื้อ WiFi ในเที่ยวบินเพื่อให้ทันกับสิ่งที่เกิดขึ้น) ประสบการณ์ทั้งหมดนี้เป็นการเตือนความจำว่ามีทุกสิ่งที่คุณไม่สามารถคาดการณ์ได้ สิ่งที่คุณไม่สามารถควบคุมได้ นี่เป็นความเสี่ยงอย่างเป็นระบบและไม่มีทางที่ฉันจะได้เห็น การกดปุ่มและขั้นตอนการสร้างอาคารไม่เพียงพอ การจัดการความเสี่ยงที่เหมาะสมและรู้เมื่อคุณต้องการใช้ยาเย็นเป็นสิ่งที่สามารถให้คุณในเกม ในโพสต์ต่อไปฉันจะโพสต์ทั้งอัลกอริทึมและไปตามบรรทัด ฉันยังวางแผนที่จะพูดคุยเกี่ยวกับ theDAO และ Ethereum อีกเล็กน้อย หากคุณไม่ต้องการพลาดข้อมูลใด ๆ เหล่านี้และขอข้อมูลเพิ่มเติมโปรดอย่าลังเลที่จะลงทะเบียนจดหมายข่าวที่ฉันพูดถึง fintech อัลกอริทึมและตลาด โดยวิธีการที่ถ้าคุณต้องการที่จะทำให้ cryptocurrency ของคุณเองและเรียนรู้เพิ่มเติมเกี่ยวกับ Ethereum ฉันมีโพสต์ที่ดีกับรหัสที่โพสต์ที่นี่ ต่อไป: ดำน้ำเข้าโปรแกรม ETHDAO algotrading หากคุณมีข้อเสนอแนะเพิ่มเติม ping ฉันที่ jonromero หรือลงทะเบียนเพื่อรับจดหมายข่าว Outro กฎหมาย นี่คือการสอนด้านวิศวกรรมเกี่ยวกับวิธีการสร้างแพลตฟอร์มที่มีการปรับแบบทดสอบสำหรับการทดลองและความสนุก ข้อเสนอแนะใด ๆ ที่นี่ไม่ใช่คำแนะนำทางการเงิน หากคุณสูญเสียเงินทั้งหมด (หรือทั้งหมด) เนื่องจากคุณทำตามคำแนะนำด้านการค้าหรือใช้ระบบนี้ในการผลิตคุณจะไม่สามารถตำหนิบล็อกแบบสุ่มนี้ (และฉัน) ได้ เพลิดเพลินกับความเสี่ยงของคุณเอง การเรียนรู้และการซื้อขายเครื่องจักรเป็นเรื่องที่น่าสนใจมาก นอกจากนี้ยังเป็นเรื่องที่คุณสามารถใช้จ่ายตันของการเขียนโค้ดเวลาและการอ่านเอกสารแล้วเด็กสามารถตีคุณในขณะที่เล่นมาริโอคาร์ท ในโพสต์ถัดไปเราจะพูดถึง: เพิ่มประสิทธิภาพรายการและการออก นี่เป็นเพียงแค่สิ่งนี้เท่านั้นที่จะทำให้เกิดความแตกต่างในการหมุนเวียนของธนาคารของคุณ คำนวณขนาดตำแหน่ง (ในกรณีที่คุณไม่ชอบเกณฑ์ Kelly) ค้นหาความสัมพันธ์ที่เป็นไปได้ระหว่างคู่ต่างๆ (คู่ค้า) ฉันรักความสัมพันธ์ของ EURUSD vs GBPJPY คำนวณเส้นอุปต้านทานของ amp สนับสนุน แต่อัลกอริทึมการเรียนรู้กลไกการเรียนรู้ของเครื่องคือกลไกที่เครื่องสามารถระบุรูปแบบข้อมูลของคุณได้อย่างไร Yeap มันง่ายมาก ตัวอย่างเช่นค้นหาสัตว์ทั้งหมดในภาพนี้และวาดกล่องรอบ ๆ ตัว นอกจากนี้ให้ตั้งชื่อว่าสัตว์นั้น บ้าฉันรู้ สำหรับการค้าขายตามที่คุณสามารถจินตนาการได้นั้นคล้ายคลึงกัน: เพื่อให้เครื่องเรียนรู้คุณต้องสอนว่าอะไรถูกหรือผิด (การดูแลภายใต้การเรียนรู้) หรือให้ชุดข้อมูลขนาดใหญ่และปล่อยให้มันป่า (ไม่ได้ดูแล) สำหรับการระบุวัตถุนี้ตรงไปข้างหน้า แต่สิ่งที่เกี่ยวกับการซื้อขายผมมองไปรอบ ๆ เพื่อดูว่ามีเครื่องเรียนรู้โปรแกรมที่สามารถระบุเส้น SR แต่เพื่อประโยชน์ no. ดังนั้นผมจึงตัดสินใจที่จะเขียนโปรแกรมการเรียนรู้เครื่องแรกในหลามที่ระบุสายการสนับสนุนและความต้านทานใน Python แต่วิธีการที่อัลกอริทึมสามารถระบุพื้นที่เหล่านี้ได้ Hoooooow สุภาพสตรีและสุภาพบุรุษ (และหุ่นยนต์) ให้ฉันแนะนำคุณกับ MeanShift อัลกอริทึมที่ไม่ได้รับการยกเว้นซึ่งใช้เป็นส่วนใหญ่ในการจดจำภาพและค่อนข้างเล็กน้อยในการตั้งค่าและรัน (แต่ยังช้ามาก) แนวคิดก็คือว่าอัลกอริธึมนี้จะทำให้ฉันสามารถแบ่งพาร์ทิชันข้อมูลของฉัน (forex ticks) ลงในพื้นที่ต่างๆได้แล้วฉันสามารถใช้ขอบเป็นเส้นรองรับและความต้านทานได้ เราวิเคราะห์ประมาณ 12 ล้านจุดของ EURUSD ในปี 2014 และสองสามเดือนของปี 2015 สายความต้านทานจะถูกวางโดยอัตโนมัติโดยอัลกอริทึมการเรียนรู้ด้วยเครื่อง สิ่งที่เจ๋งจริงๆ (และน่ากลัว) ก็คือขั้นตอนวิธีเล็บสวยมาก เล็บมันยาก จะได้รับจริงๆเหมือนกันเมื่อเราจะใช้ขั้นตอนวิธีในการระบุโครงสร้างขนาดเล็กและเริ่มต้น scalping ระบบสามารถประมวลผลข้อมูล timeseries (หุ้น forex ทองอะไรก็ได้) และจะแสดงกราฟแบบโต้ตอบแบบ html (เช่นแผนภูมิด้านบน) พร้อมกับข้อมูลของคุณและเครื่องสร้าง SL โค้ดอยู่ที่นี่เพื่อไปบ้า ตอนนี้ให้ขั้นตอนผ่านรหัส หลังจากที่คุณมีชุดข้อมูลแล้วคุณต้องอ่านและทำความสะอาด เตรียมความพร้อมสำหรับมายากลแพนด้าบาง เราจะลดค่าว่างลง (วันสุดสัปดาห์) จากนั้นเราจะรีเฟรชข้อมูลให้เป็นเชิงเทียนตลอด 24 ชั่วโมง (ohcl) ทำให้ง่ายขึ้นในการพล็อต ข้อมูลที่จัดกลุ่มเป็นข้อมูลที่เราป้อนลงในอัลกอริธึม ml จากนั้นเราเตรียมข้อมูลที่เราจะใช้ในอัลโก ในโพสต์ถัดไปหารือกันถึงวิธีการทำให้งานนี้ดียิ่งขึ้นหารือเกี่ยวกับผลการค้นหาที่น่าสนใจบางอย่าง (อัลกอริธึมสามารถทำนายอนาคตได้จริง) และเริ่มใช้ในการซื้อขายของเราเอง หากคุณต้องการตรวจสอบบทความถัดไปและอ่านเพิ่มเติมเกี่ยวกับการซื้อขายและการลงทุนโดยใช้อัลกอริทึมลงชื่อสมัครรับจดหมายข่าว มาถึงต่อไป: Machine Learning Gone Wild - การใช้โค้ดถ้าคุณมีข้อเสนอแนะเพิ่มเติม ping ฉันที่ jonromero หรือลงทะเบียนเพื่อรับจดหมายข่าว Outro กฎหมาย นี่คือการสอนด้านวิศวกรรมเกี่ยวกับวิธีการสร้างแพลตฟอร์มที่มีการปรับแบบทดสอบสำหรับการทดลองและความสนุก ข้อเสนอแนะใด ๆ ที่นี่ไม่ใช่คำแนะนำทางการเงิน หากคุณสูญเสียเงินทั้งหมด (หรือทั้งหมด) เนื่องจากคุณทำตามคำแนะนำด้านการค้าหรือใช้ระบบนี้ในการผลิตคุณจะไม่สามารถตำหนิบล็อกแบบสุ่มนี้ (และฉัน) ได้ เพลิดเพลินกับความเสี่ยงของคุณเอง Update: The Machine การเรียนรู้โพสต์เป็นไปได้มหากาพย์ แต่ต้องใช้เวลามากเพื่อให้โค้ดเรียบร้อย หมีกับฉัน, สิ่งที่เย็นกำลังจะมา (ตามที่ youve อ่านจดหมายข่าว) คำเตือน: นี่ไม่ใช่คำแนะนำภาษี สิ่งที่น่าแปลกใจจริงๆก็คือคำขอส่วนใหญ่ในจดหมายข่าวคือ: ใช้เครื่องมือเพื่อช่วย Trading Machine การเรียนรู้เพื่อเพิ่มประสิทธิภาพการทำธุรกรรมการค้าภาษีครั้งแรกที่สองฉันสามารถเข้าใจได้ ทุกคนอยากเป็นพ่อค้าที่ดีกว่า ฉันได้รับมัน แต่ภาษีภาษีเป็นวันโชคดีของคุณ ภาษี Forex เป็นเรื่องง่ายสุด ๆ อย่างจริงจัง. โดยค่าเริ่มต้น (เรียกว่ามาตรา 988) การสูญเสียทั้งหมดของคุณจะชดเชยภาษีเงินได้ของคุณโดยไม่มีขีด จำกัด 3k ต่อปี นี่เป็นอะไรที่ดีกว่าการซื้อขายหุ้นที่ขาดทุนชดเชยผลกำไรของคุณ แต่สิ่งที่เกิดขึ้นกับกำไรทำไมคุณถึงดูแลทำไมผู้ค้า Forex ส่วนใหญ่เสียเงิน (ฉันเรียกว่าจ่ายค่าเล่าเรียน) ในปีแรกดังนั้นคุณจะดีกว่าการรักษาให้เรียบง่ายจนกว่าคุณจะมีกลยุทธ์ที่ได้รับการพิสูจน์และสอดคล้องกัน หากคุณทำกำไรได้จริงคุณจะถูกหักภาษี ณ ที่จ่ายเงินระยะสั้น (บางครั้งอาจถึง 40) การแก้ปัญหาเมื่อคุณเริ่มต้นทำเงินคือการเลือกออกจากมาตรา 988 และต้องเสียภาษีภายใต้มาตรา 1256 โดยที่ 60 ของกำไรจะเสียภาษีเป็นผลกำไรระยะยาวและ 40 เป็นระยะสั้น (แต่ตอนนี้ความสูญเสียไม่สามารถชดเชยรายได้ของคุณได้) นี้เป็นสิ่งที่ดีมากเมื่อคุณทำเงินไม่ดีมากเมื่อคุณ dont เริ่ม LLC สำหรับคนที่เพิ่งเริ่มทำการทดลองกับ Forex และ algotrading ฉันมักแนะนำให้พวกเขาอยู่กับมาตรา 988 (ค่าเริ่มต้น) และเมื่อพวกเขาเริ่มทำเงิน (สม่ำเสมอ) หรือต้องการไปเต็มเวลาพูดคุยกับฉัน :) อย่างจริงจังมีหลายอย่างที่คุณจะเริ่มทำแตกต่างกันเมื่อคุณไปจากเวทีงานอดิเรกไปเป็นรายได้ที่สองไปงานเต็มเวลาที่ไม่มีเหตุผลที่จะเพิ่มประสิทธิภาพมากเกินไปนี้ มาต่อไป: Machine Learning Gone Wild หากคุณมีข้อเสนอแนะเพิ่มเติม ping ฉันที่ jonromero หรือลงทะเบียนเพื่อรับจดหมายข่าว Outro กฎหมาย นี่คือการสอนด้านวิศวกรรมเกี่ยวกับวิธีการสร้างแพลตฟอร์มที่มีการปรับแบบทดสอบสำหรับการทดลองและความสนุก ข้อเสนอแนะใด ๆ ที่นี่ไม่ใช่คำแนะนำทางการเงิน หากคุณสูญเสียเงิน (หรือทั้งหมด) ไปเนื่องจากคุณทำตามคำแนะนำด้านการค้าหรือใช้ระบบนี้ในการผลิตคุณไม่สามารถตำหนิบล็อกแบบสุ่มนี้ (และฉัน) ได้ เพลิดเพลินกับความเสี่ยงของคุณเอง ครั้งสุดท้ายที่เราได้พูดคุยเกี่ยวกับ Backtester for-looper (ที่ผมชอบเรียกพวกเขา) ตอนนี้ถึงเวลาที่จะเห็นรหัสบางอย่างเรากล่าวว่าเรามีสิ่งที่ต้องการที่: หลามสำหรับแต่ละองค์ประกอบของ readhistoricaldata (): applystrategy () howourstrategydid () หวานช่วยให้โหลดกลยุทธ์ของเราโหลดข้อมูลทางประวัติศาสตร์บางเรียกใช้อัลกอริทึมของเราและพิมพ์ผลลัพธ์บางอย่าง ฉันชอบที่จะมีกลยุทธ์ของฉันในรูปแบบ JSON ที่มีชื่อของกลยุทธ์และข้อกำหนดบางอย่าง (เช่นกี่จุดสำหรับ stoploss หรือ takeprofit ฯลฯ ) ด้วยวิธีนี้เมื่อเริ่มต้นใช้งาน backtester ตามเหตุการณ์เราสามารถผ่านกลยุทธ์ผ่านอัลกอริทึมการเรียนรู้ด้วยเครื่องและพยายามเพิ่มประสิทธิภาพให้ได้ บรรทัดถัดไปกำลังโหลดข้อมูลของเรามาฉันรู้ว่าคนไม่ชอบดองและมีวิธีอื่นในการโหลดข้อมูล (และเราจะพูดถึง BColz ในบางจุด) แต่ตอนนี้ก็เปลือยกับฉัน บรรทัดถัดไปเป็นตัวอธิบาย เราส่งผ่านข้อมูลทางประวัติศาสตร์ไปยัง algo ของเราแล้วเราจะได้รับสถิติในการพิมพ์ ให้เน้นขั้นตอนเล็กน้อยเล็กน้อยและเราสามารถพูดถึงการวางแผน ฯลฯ ได้ในภายหลัง ความมหัศจรรย์ของระบบ backtesting ที่เรียบง่ายเตรียมที่จะประหลาดใจด้วยวิธีการที่น่าขันง่ายที่จะทำเช่นนี้ สิ่งที่เกิดขึ้นกับ backtesting ประเภทนี้คือ 1. คุณอาจทำผิดพลาดเมื่อต้องการใช้อัลกอริทึมเดียวกันแบบเดียวกัน 2. คุณจะสามารถเขียนกลยุทธ์ที่ซับซ้อนได้ (อย่างน้อยง่าย ๆ ) 3. ยากที่จะปรับขนาด (เมื่อเทียบกับเหตุการณ์) 4. คุณจำเป็นต้องมีการจำลองและการปฏิบัติของคุณในภาษาเดียวกัน แต่จำไว้ว่านี่คือวิธีที่ดีที่สุดและเร็วที่สุดในการเริ่มต้นและคิดออกว่างานทั้งหมดเหล่านี้ทำงานอย่างไร มาถึงต่อไปโดยใช้ backtesters ที่รู้จักกันดีอื่น ๆ ใน Python และเพิ่มกราฟของเราเองหากคุณมีข้อเสนอแนะเพิ่มเติม ping ฉันที่ jonromero หรือลงทะเบียนจดหมายข่าว Outro กฎหมาย นี่คือการสอนด้านวิศวกรรมเกี่ยวกับวิธีการสร้างแพลตฟอร์มที่มีการปรับแบบทดสอบสำหรับการทดลองและความสนุก ข้อเสนอแนะใด ๆ ที่นี่ไม่ใช่คำแนะนำทางการเงิน หากคุณสูญเสียเงิน (หรือทั้งหมด) ไปเนื่องจากคุณทำตามคำแนะนำด้านการค้าหรือใช้ระบบนี้ในการผลิตคุณไม่สามารถตำหนิบล็อกแบบสุ่มนี้ (และฉัน) ได้ เพลิดเพลินกับความเสี่ยงของคุณเอง มีระบบการจัดลำดับที่ดีโดยไม่มีกลยุทธ์ที่จะปรับใช้อย่างละเอียดด้านล่างมีรายการกลยุทธ์ที่ฉันพบในแบบออนไลน์ (หรือส่งให้ฉันโดยผู้ค้าที่อยู่ในจดหมายข่าว) ฉันวางแผนที่จะปรับปรุงรายการขณะที่ฉันยังคงติดตามแนวคิดใหม่ แนวความคิดคือเมื่อเราดำน้ำต่อไปเรื่อย ๆ ในระบบการจัดวางระบบแบบผสมผสานของเราฉันจะแสดงวิธีการสร้างรหัสและปรับใช้กลยุทธ์เหล่านี้ ฉันรู้แน่ว่าส่วนใหญ่ทำงานด้วยการเปลี่ยนแปลงเล็กน้อย สถานการณ์สมมติที่เลวร้ายที่สุดคุณจะมีระบบทดสอบสมมติฐานของคุณ นี่คือรายการ (โปรดส่งกลยุทธ์อื่น ๆ ที่คุณคิดว่าควรรวมไว้): มาร่วมแบ่งปันและอภิปรายเกี่ยวกับ backtester ที่ง่ายที่สุด (แต่ประสบความสำเร็จมากที่สุด) ถ้าคุณมีข้อเสนอแนะเพิ่มเติม ping me at jonromero หรือ signup to the จดหมายข่าว Outro กฎหมาย นี่คือการสอนด้านวิศวกรรมเกี่ยวกับวิธีการสร้างแพลตฟอร์มที่มีการปรับแบบทดสอบสำหรับการทดลองและความสนุก ข้อเสนอแนะใด ๆ ที่นี่ไม่ใช่คำแนะนำทางการเงิน หากคุณสูญเสียเงิน (หรือทั้งหมด) ไปเนื่องจากคุณทำตามคำแนะนำด้านการค้าหรือใช้ระบบนี้ในการผลิตคุณไม่สามารถตำหนิบล็อกแบบสุ่มนี้ (และฉัน) ได้ เพลิดเพลินกับความเสี่ยงของคุณเอง การสร้างระบบ backtest เป็นเรื่องง่ายจริง ๆ ง่ายที่จะสกรูผมหมายถึง แม้ว่าจะมีห้องสมุดที่ดีเยี่ยมมากมายหลายเล่ม แต่เราก็อยากทำแบบนี้ด้วยตัวเองเพื่อปรับแต่งให้ดีขึ้น จากทุกระบบ backtesting ที่ฉันได้เห็นเราสามารถสันนิษฐานว่ามีสองประเภทคือ for-loopers The event generators วันนี้พูดคุยเกี่ยวกับ loopers ดี สำหรับ loopers เป็นประเภทที่ชื่นชอบของ backtesters พวกเขาเป็นเรื่องเล็กน้อยในการเขียนและความสนุกสุดเพื่อขยาย แต่พวกเขามีกระแสที่สำคัญบางส่วนและเศร้าส่วนใหญ่ของ backtesters ออกมี for-loopers (PS: ฉันต้องการหาชื่อที่ดีกว่านี้) วิธีการทำงานของ loopers ใช้ loop สำหรับ (ตามที่คุณอาจคาดเดาได้) นี่เป็นวิธีหนึ่งในการทำ backtesting system ซึ่งทำงานด้วยกลยุทธ์โมเมนตัม: ดังนั้นปัญหาคืออะไรยากมากที่จะปรับขนาด (แนวนอน) ต้องทำงานเป็นจำนวนมากเพื่อให้งานของคุณใช้งานได้ (backtesting) และ การผลิตคุณจำเป็นต้องมีทุกอย่างในภาษาเขียนโปรแกรมเดียวกันให้ดำน้ำในเหล่านี้ทีละหนึ่ง scalability ฉันทดลองสองสามสัปดาห์ที่ผ่านมาด้วยอัลกอริธึมการปีนเขาเพื่อเพิ่มประสิทธิภาพกลยุทธ์ของฉัน มันยังคงทำงานอยู่ หลังจากผ่านไปสองสัปดาห์ และฉันจะสร้างระบบที่ยืดหยุ่นได้สำหรับการใช้ชีวิต ทำไมมันยังคงทำงานอยู่คุณสามารถใช้การประมวลผลแบบหลายขั้นตอนได้ ดิสโก้ (ใช้ ZeroMQ) หรือหัวข้อเพียงเพื่อเพิ่มความเร็วนี้ แต่ปัญหาบางอย่างไม่ลำบากขนาน (ใช่นี้เป็นคำที่เกิดขึ้นจริงไม่ได้เป็นหนึ่งในคำที่ฉันทำขึ้น) ปริมาณงานที่จะปรับขนาด backtester เช่นนี้ (โดยเฉพาะอย่างยิ่งเมื่อคุณต้องการเรียนรู้เกี่ยวกับเครื่องเดียวกันด้านบน) เป็นจำนวนมาก คุณสามารถทำมันได้ แต่มันก็เป็นวิธีที่ผิด การผลิตและ backtesting ในการซิงค์นี้ เวลาที่ฉันถูกกัดด้วยเรื่องนี้ ฉันสามารถเรียกคืนการค้าที่หายไปที่ฉัน hm ทำไมฉันป้อนการค้านี้หรือเวลาเก่าของฉันที่ชื่นชอบทำไม STOP TRAILING ถูกนำมาใช้ NOW เวลาเรื่อง: ฉันมีความคิดเพื่อเพิ่มประสิทธิภาพกลยุทธ์ของฉันทำงาน backtester เพื่อดูว่าจะเกิดอะไรขึ้นถ้าฉันสามารถวางหยุดต่อเนื่องจากการค้าได้กำไรเพื่อรักษาผลกำไรเสมอ Backtesting ทำงานได้ดีเช่นเดียวกับเสน่ห์ที่เพิ่มขึ้น 13 รายและการผลิตสูญหายไปทุกการค้ารายเดียว ฉันคิดว่าหลังจากอัลกอฮ์ของฉันสูญเสียไป 3400 ในสองชั่วโมง (บทเรียนที่มีราคาแพงมาก) การใช้กลยุทธ์ในการซิงค์เป็นเรื่องยากมากและแทบจะเป็นไปไม่ได้เมื่อคุณต้องการทำในแบบกระจาย และคุณไม่ต้องการให้กลยุทธ์ของคุณมีสองรูปแบบซึ่งเกือบจะเหมือนกัน เว้นเสียแต่ว่าคุณมีอะไหล่ไว้ 3400 ชิ้น ใช้ภาษาต่างๆฉันรัก Python และเมืองเออร์แลง และ Clojure และ J. และ C. และ R. และ Ruby (ไม่จริงฉันเกลียด Ruby) ฉันต้องการที่จะสามารถใช้ประโยชน์จากความแรงของภาษาอื่น ๆ ในระบบของฉันได้ ฉันต้องการลองใช้กลยุทธ์ใน R ซึ่งมีห้องสมุดที่ได้รับการทดสอบเป็นอย่างดีและมีชุมชนใหญ่อยู่เบื้องหลัง ฉันต้องการมี Erlang เพื่อปรับขนาดรหัสและ C ให้เป็นข้อมูล crunch หากคุณต้องการประสบความสำเร็จ (ไม่เพียง แต่ในการซื้อขาย) คุณต้องสามารถใช้แหล่งข้อมูลทั้งหมดที่มีอยู่ได้โดยปราศจากอคติ ฉันได้เรียนรู้สิ่งต่างๆมากมายจากการแขวนอยู่กับนักพัฒนาซอฟต์แวร์ R เกี่ยวกับวิธีที่คุณสามารถทำพันธบัตรเพื่อป้องกันความเสี่ยงของเดลต้าและให้เห็นภาพได้หรือทำให้อัตราส่วนของ Sharpe สามารถโกหกได้ ทุกภาษามีฝูงชนที่แตกต่างกันและคุณต้องการให้คนจำนวนมากไหลเข้าสู่ระบบของคุณ ถ้าคุณพยายามที่จะมีกลยุทธ์ในภาษาอื่นแล้วโชคดีกับ (2) คุณเชื่อไหมว่าตอนนี้ดีฉันไม่ได้พยายามโน้มน้าวให้คุณเนื่องจาก loopers เป็นวิธีที่ยอดเยี่ยมในการเรียกใช้การทดสอบครั้งแรกของคุณ เป็นวิธีการที่ฉันเริ่มต้นและสำหรับกลยุทธ์หลาย I dont ส่งพวกเขาลงไปในท่อ วิธีที่ดีกว่า (เพื่อให้คุณสามารถนอนตอนกลางคืน) คือเครื่องกำเนิดเหตุการณ์ มาร่วมแบ่งปันและอภิปรายเกี่ยวกับ backtester ที่ง่ายที่สุด (แต่ประสบความสำเร็จมากที่สุด) หากคุณมีข้อเสนอแนะเพิ่มเติมให้ ping ฉันที่ jonromero หรือสมัครรับจดหมายข่าว Outro กฎหมาย นี่คือการสอนด้านวิศวกรรมเกี่ยวกับวิธีการสร้างแพลตฟอร์มที่มีการปรับแบบทดสอบสำหรับการทดลองและความสนุก ข้อเสนอแนะใด ๆ ที่นี่ไม่ใช่คำแนะนำทางการเงิน หากคุณสูญเสียเงินทั้งหมด (หรือทั้งหมด) เนื่องจากคุณทำตามคำแนะนำด้านการค้าหรือใช้ระบบนี้ในการผลิตคุณจะไม่สามารถตำหนิบล็อกแบบสุ่มนี้ (และฉัน) ได้ เพลิดเพลินกับความเสี่ยงของคุณเอง ก่อนที่จะใช้ระบบประมวลผลแบบแฮนเดิลแชทแบบสดจะเป็นวิธีที่ดีในการทำ backtest (นั่นหมายความว่าเราจะเรียกใช้การจำลอง) อัลกอริทึมของเรา ทราบว่าไม่ได้หมายความว่าถ้าระบบของคุณกำลังฆ่ามันมา 5 yearsmonthsdays จะทำให้มีกำไร แต่เป็นตัวบ่งชี้ที่ดีที่คุณอาจจะมีบางอย่าง มีสี่สิ่งที่เราต้องคำนึงถึงเมื่อเราทำ backtesting ของเรา: คุณภาพของข้อมูลวิธีการโหลดอย่างมีประสิทธิภาพวิธีการสร้างระบบการทดสอบหลังผลการทดสอบของเราพยายามที่จะให้ backtesting ของเราและระบบการใช้งานร่วมกันของเรามีรหัสเท่าที่เราสามารถทำได้วันนี้ เราจะมุ่งเน้นไปที่ (1) และ (2) สำหรับข้อมูล Forex ฉันใช้ GainCapital ข้อมูลของพวกเขาอยู่ในรูปของเห็บ สำหรับแหล่งข้อมูลฟรีจะดีพอ ฉันเคยใช้บริการข้อมูลประวัติโอนัส แต่ดูเหมือนว่าพวกเขาย้ายไปยังผลิตภัณฑ์ระดับพรีเมี่ยม เลวมาก. ตรวจสอบว่าคุณใช้ข้อมูล GainCapitals เฉพาะสำหรับการทดลองเท่านั้น สำหรับข้อมูลประวัติการชำระเงินอื่น ๆ (ETFs หุ้นตัวเลือก stc) ฉันใช้ eoddata (พวกเขายังมีข้อมูลทางประวัติศาสตร์ forex บาง แต่ฉันไม่ใช้พวกเขา) ช่วยให้สามารถดาวน์โหลดข้อมูลเป็นเวลา 1 สัปดาห์และทดลองสักนิด ลิงก์ไปยังข้อมูลเป็น ratedata. gaincapital20151120 พฤศจิกายน 1 มกราคม WEz1.zip สำหรับสัปดาห์แรกของเดือนพฤศจิกายน 2015 ก่อนอื่นเราต้องเปิดเครื่องรูดไฟล์ python gtunzip EURUSDWeek1.zip และคุณจะได้ไฟล์ 25MB ที่ชื่อว่า EURUSDWeek1.csv ข้อมูลเหล่านี้เป็นข้อมูลสำหรับหนึ่งสัปดาห์สำหรับคู่สกุลเงินหนึ่ง คุณสามารถจินตนาการจำนวนข้อมูลที่คุณต้องการประมวลผลสำหรับสกุลเงินทั้งหมดในช่วง 5 ปีที่ผ่านมา (คำแนะนำ: มาก) แต่อย่ากังวลเราจะเพิ่มประสิทธิภาพนี้ ตอนนี้ให้เปิดไฟล์และตรวจสอบ สิ่งที่เราสนใจคือ RateDateTime, RateBid และ RateAsk ที่คุณสามารถ understade แต่ละบรรทัดมี timestamp และเท่าไหร่คือราคาที่จะซื้อหรือขาย รูปแบบที่ดาวน์โหลดโดยบริการอื่น ๆ มีลักษณะคล้ายกันมาก มีหลายวิธีในการโหลดข้อมูลเหล่านี้ลงใน Python แต่ส่วนใหญ่ที่เป็นที่นิยมมากที่สุดเมื่อกล่าวถึงข้อมูล slicing และ manipulating คือการใช้ Pandas เราสามารถใช้ไลบรารี csv ในการโหลดข้อมูล (และอาจเร็วกว่า) แต่เราจำเป็นต้องเพิ่มประสิทธิภาพและการประมวลผลก่อนเนื่องจากคุณจะเห็นได้ว่าเป็นเรื่องง่ายมากกับแพนด้า อีกหนึ่งเครื่องมือที่ยอดเยี่ยมในการโหลด TON GBs ที่มีประสิทธิภาพและรวดเร็วมากคือการใช้ Bcolz (หรือคุณสามารถอ่านตัวอย่างถ้าคุณได้ลงทะเบียนในจดหมายข่าว Manipulating ข้อมูลโดยใช้ Pandas ข้อมูลที่เราดาวน์โหลดอยู่ในเห็บเว้นแต่เรากำลังสร้างอัลกอริทึม UHFT (Ultra High Frequency Trading) เป็น มีประสิทธิภาพมากขึ้น (หน่วยความจำการเก็บข้อมูลและการประมวลผลที่ชาญฉลาด) เพื่อจัดกลุ่มเห็บเหล่านี้เป็นวินาที (หรือนาทีหรือชั่วโมงขึ้นอยู่กับกลยุทธ์ของคุณ) ซึ่งจะทำให้ขนาดการดาวน์โหลดของเราลดลงจาก 25MB เหลือเพียง 35KB ซึ่งแปลเป็นประโยชน์อย่างมาก ให้ข้อมูลกลุ่มเหล่านี้ทั้งหมดในเวลา 15 นาทีวิธีการเวลาที่จะตกหลุมรักกับ resample การตรวจสอบชุดข้อมูลใหม่มีลักษณะดังนี้: เรียกว่าแถบ OHLC (Open High Low Close) ทุกๆ 15 นาทีคุณสามารถเห็นได้ว่าเห็บเป็น จัดกลุ่มในส่วน 15 นาทีและคุณมีจุดสูงสุดและต่ำสุดที่ราคาถึงในช่วง 15 นาทีเหล่านี้และยัง openclose สำหรับการซื้อและขายทองคำบริสุทธิ์ไม่เพียง แต่คุณมีข้อมูลทั้งหมดที่คุณต้องการ แต่ตอนนี้มันเป็นไปอย่างรวดเร็วมากที่จะโหลดมัน . คุณเพียงแค่ ต้องบันทึกข้อมูล: จากนั้นคุณสามารถใช้ไฟล์ 35kb ซ้ำได้ เราสามารถเขียนอัลกอริทึมโมเมนตัมที่เรียบง่ายซึ่งจะตรวจสอบว่ามีการเคลื่อนไหวขนาดใหญ่ในช่วง 15 นาทีที่ผ่านมาหรือไม่และหากเป็นกรณีนี้ให้ซื้อ เราจะดำน้ำในตำแหน่งนี้ในภายหลัง คุณสามารถดูรหัสได้ตลอดเวลาใน github หากคุณมีข้อเสนอแนะเพิ่มเติมให้ส่ง Ping ไปที่ jonromero หรือสมัครรับจดหมายข่าว Outro กฎหมาย นี่คือการสอนด้านวิศวกรรมเกี่ยวกับวิธีการสร้างแพลตฟอร์มที่มีการปรับแบบทดสอบสำหรับการทดลองและความสนุก ข้อเสนอแนะใด ๆ ที่นี่ไม่ใช่คำแนะนำทางการเงิน หากคุณสูญเสียเงินทั้งหมด (หรือทั้งหมด) เนื่องจากคุณทำตามคำแนะนำด้านการค้าหรือใช้ระบบนี้ในการผลิตคุณจะไม่สามารถตำหนิบล็อกแบบสุ่มนี้ (และฉัน) ได้ เพลิดเพลินกับความเสี่ยงของคุณเอง ก่อนที่จะสร้างระบบการจัดลำดับแบบใด ๆ คุณจำเป็นต้องรู้วิธีการค้าด้วยตนเอง สิ่งที่จริงหมายถึงคือคุณต้องเสียเงินด้วยตัวคุณเองก่อนที่จะตำหนิเครื่อง ทำได้ง่ายเพียงเท่านี้ ดังนั้นให้พูดคุยเกี่ยวกับ Forex Exchange หรือ Forex เป็น guys cool เรียกว่า ก่อนอื่นเราจะเลือกทำไม Forex ถึงได้รับการจัดอันดับทำไมเราถึงไม่กลายเป็นเศรษฐีค้าขายเช่นเดียวกับคนอื่นทำไมไม่เพียงแค่ซื้อ Tesla, Amazon, Google, Facebook, Twitter และหวังว่าสิ่งที่ดีที่สุด (PS: โปรดอ่านบทกฎหมายที่ตอนท้าย โพสต์บล็อกก่อนที่จะซื้อหุ้นใด ๆ ) คำตอบที่ง่าย คุณไม่สามารถชนะ (หรือแพ้) เงินได้เร็วพอโดยการซื้อหุ้น โฟมีดี (หรือแย่ขึ้นอยู่กับด้านของเหรียญที่คุณมี) สิ่งที่เรียกว่า leverage Leverage can be 1:10, 1:50, 1:100, 1:200, 1:1000 depending on how suicidal you are or how sketchy your broker is (dont worry, well talk about brokers in the next post). ให้ดูตัวอย่าง We want to place a trade of 1k. The logical thing is that in order to buy something that costs 1k, you need to have in your account 1k, right Nope. You can always get a loan. Oooooooor: Enter leverage. If we have a 1:100 leverage, we can place a trade and control 1k with just 10. For those that failed at math (dont be ashamed, I am one of you), 10 x 100 (leverage) 1,000. That means you can trade big and win big Actually 100 times more big . The catch is that you can actually go 100 times more small . Lets have another example. I just got my bonus (1k) and I want to play on Forex. Without any leverage, I can buy 1,000 Forex units that cost 1 (by the way, there are no Forex units but well talk about this later). How many units can I buy with 1:50 leverage If you answer if 100,000, you did something wrong. The answer is 50,000 (1,000 x 50 leverage). ที่นั่นคุณมี One of the reasons that we are doing Forex, is because you can lose win big. Well get back to leverage when we start placing trades. There are three more exciting reasons actually that are even more awesome (dare to say awesomer). Forex (almost) never sleeps. The markets are open ALL DAY, six days per week. To be more exact, there is not one market but four and they are overlapping providing the all day effect. Forex is very volatile and there are tons of money moving around (more than 5 trillion per day ). Crazy right No fees on trades. You dont pay 10 per trade like you are doing with stocks. Here you pay the spread which is just a fraction of a cent (again, well talk about this in another post). All these reasons (leverage, all-day, volatility, fees) make Forex the most exciting platform to build and deploy your algorithms. Coming up next, Forex brokers. How not to be scammed before even writing a line of code. If you have more feedback, ping me at jonromero or signup to the newsletter. Legal outro. This is an engineering tutorial on how to build an algotrading platform for experimentation and FUN. Any suggestions here are not financial advices. If you lose any (or all) you money because you followed any trading advices or deployed this system in production, you cannot blame this random blog (andor me). Enjoy at your own risk. แค่นั้นแหละ. Every week, I get at least 10 DMs on twitter asking on how to experiment with algotrading, Forex and portfolio analysis and Ive decided that its time to do something about it. Update: Find the posts here . So, I am planning to cover the basics of how to build your own trading platform, write your own strategies and go on vacations while electrons are making you money. Or zeroing your account. Either way, it is going to be fun The majority of the examples are going to be in Python even though there might be parts in Erlang and Ill try to keep it as easy as it can be. Lets talk now about what the final product will look like. We are building a system where you will be able to: Simulate your strategy (this is called backtesting ) Execute your strategy without supervision Alert you via smsemail for trades and errors Be scalable and trivial to deploy new updates Being able to run even from your home (from a raspberrypi for example) I assume this is going to be a total of 20 chapters, give or take. That is a system similar to the one that I am running the last year and includes a UI, sms alerts, backtesting pipeline, continuous delivery and all the cool stuff that us geeks love. All code will be on github and if everything goes well, Ill wrap it up in a book for everyone to enjoy. I have like three chapters almost done, so if you want early access just ping me at - jonromero . These are all the post that have been written up until now. I may addremove post as I get more feedback. I love Forex because: It has enormous amount of data (volume) These data are coming extremely fast (velocity) You need to consider multiple resources when you are building your strategy (variety) My definition of BigData is that you have volume-velocity-variety information and you need to react on it right now (realtime). It is one of the main reasons why I dont like Hadoop (ok, the other is because I dont like Java:). Forex is the best place if you want to start playing with BigData. You have (at least) one data channel, hitting you with data, you need to keep running algorithms on this stream (sometimes doing correlations up to a week) and you need be able to respond very fast. If a garbage collector kicks in or if you need to grab data from a database (even if this DB is in memory - long live Redis) then you will have issues. Thats the reason why most of the trading databases have all their data in the same memory space and have custom languages doing the analysis (like Kdb ). That was the inspiration for LDB. Millions of data sources (mobile phones), hitting your database and calculatingupdating for each one of the requests thousands of counters and running all sorts of algorithms. Per request. In realtime. But lets face it. The vast majority of userscompanies will never have millions (or even thousands) of requests hitting their servers. Thats why I started a new opensource database with codename: HybrisDB. HDB has the following characteristics: Simple to install (no moving parts) Simple to use (pre-defined dashboards) It will be perfect for the 99 of userscompanies but not for the 1 like Facebook or Google (sacrificing Enterprise features) The concept is to have a dashboard, to watch indicators going onoff and then (maybe) connect to a system to place an order. Sounds like an interesting cool hobby project and I still try to decide between using Erlang or Clojure for this. Ping me on twitter if you have any ideas One of my new years resolution was study one of your habits each month and I decided to focus on what activities I am spending my online time. So, I installed RescueTime which is a very cool app that sits on the background and creates reports about which apps and sites you are using the most. And no, it is not sending that info to NSA (you are not that important). Even though I spent most of my time working, writing and communicating, I also spent around 2 hours on average on Facebook (gasp). No biggie. What I hated was that for the majority of times I was scrollingrefreshing for new updates. Like opening your refrigirator every two minutes even though you know it is empty Damn you habits So, spending 2 hours every day (sometimes more) on Facebook, means 60 hours per month or 7 working days . 7 freaking working days each month. 7 days, each day with 8 full hours, to sleep, go out, exercise, write a book, learn something new. What I did was installing StayFocused. a free plugin for your browser that doesnt let you spent more than 10 minutes on specific sites everyday. และคาดเดาว่า The I am just using facebook to communicate is such a lame excuse as I had no problem communicating with my friends, even by using facebook for 10 minutes. Now, give it a shot and tell me what you built in your spare time

No comments:

Post a Comment