การย้าย ค่าเฉลี่ย กรอง จาวาสคริปต์


แผนภูมิหุ้น - ค่าเฉลี่ยเคลื่อนที่: SMA, WMA, EMA สต็อคเฉลี่ยสต็อคเป็นกราฟแสดงราคาหุ้นย้อนหลังซึ่งช่วยในการระบุแรงขายในปัจจุบันและกำลังซื้อในตลาดหุ้น ในการซื้อขายหุ้นและสินค้าโภคภัณฑ์การศึกษารูปแบบแผนภูมิมีบทบาทสำคัญในระหว่างการวิเคราะห์ทางเทคนิค การวิเคราะห์แผนภูมิหุ้นช่วยให้ผู้ประกอบการค้าสามารถกำหนดความถูกต้องได้มากขึ้นเพียงว่าอุปทานและอุปทานในปัจจุบันอยู่ในสต๊อก JenScript สนับสนุนตัวชี้วัดและการซ้อนทับทั่วไปเช่น ohlc แท่งเทียนค่าเฉลี่ยเคลื่อนที่ sma, ema, wma, macd, bollinger bands, time picker ฯลฯ ในสถิติค่าเฉลี่ยเคลื่อนที่ (ค่าเฉลี่ยโดยเฉลี่ยหรือค่าเฉลี่ยในการทำงาน) คือการคำนวณ วิเคราะห์จุดข้อมูลด้วยการสร้างชุดค่าเฉลี่ยของชุดย่อยที่แตกต่างกันของชุดข้อมูลทั้งหมด ค่าเฉลี่ยเคลื่อนที่จะถูกใช้โดยทั่วไปกับข้อมูลชุดข้อมูลแบบเรียลไทม์เพื่อให้เกิดความผันผวนในระยะสั้นและเน้นแนวโน้มระยะยาวหรือรอบระยะยาว เกณฑ์ระหว่างระยะสั้นและระยะยาวขึ้นอยู่กับแอ็พพลิเคชันและพารามิเตอร์ของค่าเฉลี่ยเคลื่อนที่จะถูกตั้งค่าตามลำดับ ตัวอย่างเช่นมักใช้ในการวิเคราะห์ข้อมูลทางการเงินเช่นราคาหุ้นผลตอบแทนหรือปริมาณการซื้อขาย นอกจากนี้ยังใช้ในทางเศรษฐศาสตร์เพื่อตรวจสอบผลิตภัณฑ์มวลรวมภายในประเทศการจ้างงานหรือชุดเวลาทางเศรษฐกิจมหภาคอื่น ๆ ลงทะเบียนปลั๊กอิน StockPlugin ในมุมมองการดู เพิ่มสต็อคในปลั๊กอินแล้วลงทะเบียนรูปแบบเช่น StockMovingAverageLayer หรือ StockWeightedMovingAverageLayer หรือ StockExponentialMovingAverageLayer เป็นเส้นโค้งค่าเฉลี่ยเคลื่อนที่ของหุ้นเหล่านี้ในช่วง กรณีของค่าเฉลี่ยเคลื่อนที่แบบง่ายค่าเฉลี่ยเคลื่อนที่เฉลี่ย (SMA) คือค่าเฉลี่ยที่ไม่ได้รวมอยู่ในข้อมูล n ก่อนหน้า อย่างไรก็ตามในด้านวิทยาศาสตร์และวิศวกรรมค่าเฉลี่ยจะถูกนำมาจากข้อมูลที่เท่ากันทั้งสองด้านของค่ากลาง เพื่อให้แน่ใจได้ว่ารูปแบบต่างๆของค่าเฉลี่ยจะสอดคล้องกับรูปแบบของข้อมูลมากกว่าที่จะเปลี่ยนไปในเวลา ตัวอย่างของค่าเฉลี่ยในการทำงานที่ถ่วงน้ำหนักอย่างเท่าเทียมกันสำหรับตัวอย่างราคาปิดของ n วันคือค่าเฉลี่ยของราคาปิดของ n วันก่อนหน้ากรณีของค่าเฉลี่ยถ่วงน้ำหนักถัวเฉลี่ยถ่วงน้ำหนักเป็นค่าเฉลี่ยที่มีปัจจัยการคูณเพื่อให้น้ำหนักที่ต่างกันกับข้อมูลที่ ตำแหน่งที่แตกต่างกันในหน้าต่างตัวอย่าง ทางคณิตศาสตร์ค่าเฉลี่ยเคลื่อนที่คือการเวียนของจุดฐานที่มีฟังก์ชันการถ่วงน้ำหนักคงที่ ในการวิเคราะห์ทางเทคนิคของข้อมูลทางการเงินค่าเฉลี่ยถ่วงน้ำหนัก (WMA) มีความหมายเฉพาะเจาะจงของน้ำหนักที่ลดลงในความก้าวหน้าทางคณิตศาสตร์ ในวัน WMA n วันล่าสุดมีน้ำหนัก n อันดับที่ใหม่ที่สุด n 1 ฯลฯ ลงไปหนึ่งครั้ง กรณีของค่าเฉลี่ยเคลื่อนที่ที่เป็นแบบเฉลี่ยค่าเฉลี่ยเคลื่อนที่ที่คล้ายคลึงกับค่าเฉลี่ยเคลื่อนที่แบบธรรมดายกเว้นว่าจะให้ข้อมูลน้ำหนักมากขึ้น ค่าเฉลี่ยเคลื่อนที่แบบเสวนา (EMA) เป็นที่รู้จักกันว่าเป็นค่าเฉลี่ยถ่วงน้ำหนักที่ชี้แจง ค่าเฉลี่ยเคลื่อนที่นี้มีการตอบสนองได้เร็วกว่าการเปลี่ยนแปลงของราคาล่าสุดเมื่อเทียบกับค่าเฉลี่ยเคลื่อนที่แบบธรรมดา EMA 12 และ 26 วันเป็นค่าเฉลี่ยระยะสั้นที่ได้รับความนิยมสูงสุดและใช้ในการสร้างตัวบ่งชี้เช่นความแตกต่างของค่ามัธยฐานค่าเฉลี่ยเคลื่อนที่ (MACD) และค่าร้อยละของค่าความแปรปรวน (PPO) โดยทั่วไปแล้ว EMA 50 และ 200 วันใช้เป็นสัญญาณของแนวโน้มในระยะยาว สำหรับกรณีศึกษานี้เราจะค้นหาราคาหุ้นย้อนหลังที่ตลาด NASDAQ ตัวอย่างเช่น slv ซึ่งเป็น The Trust เงิน iShares (Trust) พยายามที่จะสะท้อนโดยทั่วไปประสิทธิภาพของราคาของเงิน ไปในส่วนเมนูประวัติศาสตร์และหลังจากสั่งซื้อประวัตินี้เรามีราคาในอดีตที่แยกตามปี รายการสต็อกสินค้ากำหนดโดยคุณสมบัติ: กำหนด วันที่กำหนดต่ำ ราคาต่ำสุดกว่าหนึ่งหน่วยเวลา (เช่นหนึ่งวันหรือหนึ่งชั่วโมง) ราคาสูง ราคาสูงสุดในช่วงเวลาหนึ่ง () เช่น หนึ่งวันหรือหนึ่งชั่วโมง) ราคาเปิด ราคาเปิด (เช่นสำหรับแผนภูมิรายวันนี่เป็นราคาเริ่มต้นสำหรับวันนั้น) ราคาปิด ราคาปิดของช่วงเวลาที่กำหนดไว้ จำนวนหุ้นหรือสัญญาซื้อขายในระบบรักษาความปลอดภัยหรือตลาดทั้งหมดกระบวนการที่ไม่ปิดกั้น UI ถือว่าเรากำลังใช้งานเว็บที่โหลดข้อมูลข้อมูลทางประวัติศาสตร์แบบอะซิงโครนัส เราสามารถใช้พนักงานสต็อกนี้ที่ให้ข้อมูลการดาวน์โหลดและตัวโหลดสต็อคที่จัดการข้อมูลที่โหลด เตรียมเอกสาร HTML ก่อน ช่วยให้การสร้างฟังก์ชัน JenScript JS - JavaScript HTML5SVG ไลบรารีข้อมูลการแสดงแผนภูมิข้อมูลข้อเสียของการกรองค่าเฉลี่ยเคลื่อนที่เมื่อใช้ข้อมูลชุดเวลาเป็นอย่างไรตัวอย่างเช่น MATLAB ตัวอย่างเพื่อดูผลของการใช้งาน ตัวอย่างเช่นการใช้ตัวกรองกับสัญญาณที่มีระยะเวลาประมาณ 10.09082 จะช่วยลดสัญญาณดังกล่าวได้อย่างสมบูรณ์ นอกจากนี้เนื่องจากความสำคัญของการตอบสนองต่อความถี่คือการตอบสนองต่อความถี่ที่แน่นอนการตอบสนองของค่าเป็นค่าลบระหว่าง 0.3633 และระหว่าง 0.4546 และความถี่ Nyquist ส่วนประกอบสัญญาณทั้งหมดที่มีความถี่ภายในช่วงเวลาเหล่านี้จะถูกมิเรอร์บนแกน t ตัวอย่างเช่นเราลองใช้คลื่นซายน์ที่มีระยะเวลา 7.0000 เช่น ความถี่ประมาณ 0.1429 ซึ่งอยู่ในช่วงแรกที่มีการตอบสนองต่อระดับลบ: t (1: 100) x10 2sin (2 pit7) b10 (1,11) ตัวกรองความยาว (m 10) 10 (10) y10 (10) ) y10 y10 (1 (m10-1) 2: end - (m10-1) 2,1) y10 (end1: endm10-1,1) zeros (m10-1,1) พล็อต (t, x10, t, y10 ) นี่คือการตอบสนองของตัวกรองที่แสดงค่าศูนย์และการตัดกัน: h, w freqz (b10,1,512) f 1w (2pi) ขนาด abs (h) พล็อต (f, magnitude) คลื่นซายน์ที่มีระยะเวลา 7 ประสบการณ์ การลดความกว้างของเช่น ประมาณ 80 แต่ยังเปลี่ยนสัญญาณที่คุณสามารถดูได้จากพล็อต การกำจัดความถี่บางส่วนและการพลิกสัญญาณมีผลสำคัญในขณะที่การตีความสาเหตุในวิทยาศาสตร์โลก ควรใช้ตัวกรองเหล่านี้แม้ว่าจะเป็นมาตรฐานในโปรแกรมสเปรดชีตเพื่อให้มีความราบรื่นควรหลีกเลี่ยงอย่างสมบูรณ์ ควรใช้ฟิลเตอร์ที่มีการตอบสนองความถี่เฉพาะเช่นตัวกรอง Lowpass Butterworth แนะนำ 2 ข้อเสนอแนะ Philippe de Peretti middot Universit Paris 1 Panthon-Sorbonne, Paris, France ข้อตกลงที่ดีคือการใช้ชุดโครงสร้างเวลาและในรูปแบบจำลองเชิงเส้น locar ซึ่งเป็นแบบจำลอง IMA ผมขอแนะนำให้มี looka ที่ Durbin และ Koopman (2001) เกี่ยวกับวิธีการกรองแบบ Kalman การใช้ตัวกรองคาลมานเป็นวิธีที่ดีที่สุดในมุมมองของฉัน แนะนำ 1 คำแนะนำ Hi Bilal Esmael ฟังก์ชันน้ำหนักของตัวกรองค่าเฉลี่ยเคลื่อนที่ของคุณควรสมมาตร มิฉะนั้นค่าที่กรองจะถูกเปลี่ยนไปในเฟส: ขึ้นอยู่กับโครงสร้างของฟังก์ชันน้ำหนักความล่าช้าของเฟสอาจถึงครึ่งหนึ่งของความยาวของฟังก์ชันน้ำหนัก ตัวอย่างเช่นตัวกรองคาลมานด้านเดียวมีฟังก์ชันน้ำหนักอสมมาตร ต่อไปให้ระมัดระวังในการตีความค่าที่กรองที่ปลายทั้งสองของชุดเวลา, theyve มีความล่าช้าของเฟสโครงสร้างเสมอ ขอแสดงความนับถือ Michael HeinertAveragesSpect เฉลี่ยเคลื่อนไหวเฉลี่ยค่าเฉลี่ยเคลื่อนที่โดยเฉลี่ยเราขอแนะนำให้คุณแก้ปัญหานี้ตามคำอธิบายงานโดยใช้ภาษาใด ๆ ที่คุณอาจรู้จัก คำนวณค่าเฉลี่ยเคลื่อนที่แบบง่ายๆของชุดตัวเลข สร้างคลาการทำงานของรัฐที่ต้องใช้ระยะเวลาและส่งกลับค่าตามปกติซึ่งใช้ตัวเลขเป็นอาร์กิวเมนต์และส่งค่าเฉลี่ยเคลื่อนที่ของอาร์กิวเมนต์เป็นค่าเฉลี่ย ค่าเฉลี่ยเคลื่อนที่โดยเฉลี่ยเป็นวิธีการคำนวณจำนวนกระแสเฉลี่ยโดยเฉลี่ยเพียง 160 หมายเลข 160 P จากสตรีม 160 ซึ่ง 160 P 160 เรียกว่าช่วงเวลา สามารถใช้งานได้โดยการเรียกใช้ initialing routine กับ 160 P 160 เป็นอาร์กิวเมนต์ของมัน 160 I (P), 160 ซึ่งควรจะคืนค่าตามปกติซึ่งเมื่อเรียกกับแต่ละสมาชิกต่อเนื่องของสตรีมตัวเลขคำนวณค่าเฉลี่ยของ ), 160 P 160 ตัวสุดท้ายของพวกเขาอนุญาตให้เรียก 160 SMA () นี้ คำ 160 160 stateful ในคำอธิบายงานหมายถึงต้อง 160 SMA () 160 เพื่อจดจำข้อมูลบางอย่างระหว่างการโทรไป 160 ระยะเวลา 160 P 160 ตู้ที่สั่งอย่างน้อย 160 160 หมายเลขสุดท้ายจากแต่ละ การโทรแต่ละครั้ง Stateful 160 หมายความว่าการเรียกเลขหมาย 160 I (), 160 initializer 160 ควรจะแยกแต่ละครั้งที่ทำ 160 ไม่ 160 รัฐที่บันทึกไว้เพื่อให้สามารถใช้ข้อมูลได้สองแบบ Pseudo-code สำหรับการใช้ 160 SMA 160 คือเวอร์ชันนี้ใช้คิวถาวรเพื่อเก็บค่า p ล่าสุด แต่ละฟังก์ชันที่ส่งกลับมาจาก init-moving-average จะมีสถานะเป็นอะตอมที่เก็บค่าคิวไว้ การใช้งานนี้ใช้รายการแบบวงกลมเพื่อจัดเก็บตัวเลขภายในหน้าต่างที่จุดเริ่มต้นของตัวชี้ย้ำแต่ละอันหมายถึงเซลล์ของรายการซึ่งเก็บค่าที่เพิ่งย้ายออกจากหน้าต่างและจะแทนที่ด้วยค่าที่เพิ่มขึ้น การใช้ Closure edit ปัจจุบันนี้ sma cant เป็น nogc เนื่องจากจัดสรรการปิดลงบน heap การวิเคราะห์หนีบางอย่างสามารถลบการจัดสรรฮีปได้ การใช้การแก้ไข Struct รุ่นนี้จะหลีกเลี่ยงการจัดสรรฮีปของการปิดเพื่อเก็บข้อมูลไว้ในกรอบกองซ้อนของฟังก์ชันหลัก เอาท์พุทเดียวกัน: เพื่อหลีกเลี่ยงการประมาณจุดลอยเก็บซ้อนขึ้นและการเจริญเติบโตรหัสสามารถดำเนินการรวมเป็นงวดในอาร์เรย์แถววงกลมทั้งหมด การใช้งานนี้จะสร้างอ็อบเจ็กต์ร่วมกันสองสถานะ (ฟังก์ชัน) เป็น idiomatic ใน E เพื่อแยกข้อมูลจาก output (อ่านจากเขียน) แทนที่จะรวมไว้ในวัตถุหนึ่ง โครงสร้างนี้เหมือนกับการใช้งาน Standard DeviationE โปรแกรม Elixir ด้านล่างสร้างฟังก์ชันที่ไม่ระบุตัวตนด้วยระยะเวลาฝังตัว p ซึ่งใช้เป็นระยะเวลาของค่าเฉลี่ยเคลื่อนที่ที่เรียบง่าย ฟังก์ชัน run จะอ่านข้อมูลตัวเลขและส่งผ่านไปยังฟังก์ชันที่ไม่ระบุตัวตนที่สร้างขึ้นใหม่จากนั้นตรวจสอบผลที่ได้รับจาก STDOUT ผลลัพธ์แสดงด้านล่างโดยมีค่าเฉลี่ยตามด้วยข้อมูลที่จัดกลุ่มซึ่งเป็นพื้นฐานของค่าเฉลี่ยเคลื่อนที่แต่ละค่า Erlang มีการปิด แต่ตัวแปรไม่เปลี่ยนรูป วิธีแก้ปัญหาคือการใช้กระบวนการและข้อความง่ายๆผ่าน API ตาม ภาษาเมทริกซ์มีขั้นตอนการคํานวณค่าเฉลี่ยการร่อนสําหรับลำดับรายการที่กำหนด มีประสิทธิภาพน้อยกว่าการวนรอบในคำสั่งต่อไปนี้ แจ้งให้ฉันป้อนข้อมูลอย่างต่อเนื่อง ซึ่งจะถูกเพิ่มลงในตอนท้ายของรายการ L1 L1 สามารถพบได้โดยการกด 2ND1 และค่าเฉลี่ยจะอยู่ใน ListOPS กด ON เพื่อยุติโปรแกรม รายการที่มีค่าเฉลี่ยของอาร์กิวเมนต์ที่ให้มาโปรแกรมที่ส่งคืนค่าที่ง่ายในแต่ละคำร้อง: รายการคือรายการที่มีค่าเฉลี่ย: p คือช่วง: 5 จะแสดงรายการค่าเฉลี่ย: ตัวอย่างที่ 2: การใช้โปรแกรม movinav2 (i. , 5) - เริ่มต้นการคำนวณค่าเฉลี่ยเคลื่อนที่และกำหนดระยะเวลา 5 movinav2 (3, x): x - ข้อมูลใหม่ในรายการ (ค่า 3) และผลลัพธ์จะถูกจัดเก็บในตัวแปร x และแสดง movinav2 (4, x) : x - ข้อมูลใหม่ (ค่า 4) และผลลัพธ์ใหม่จะถูกเก็บไว้ในตัวแปร x และแสดง (43) 2 คำอธิบายของฟังก์ชัน movinavg: ตัวแปร r - เป็นผลลัพธ์ (รายการเฉลี่ย) ที่จะถูกส่งคืนตัวแปร i - เป็นตัวแปรดัชนีและชี้ไปที่จุดสิ้นสุดของรายการย่อยที่รายการถูกเฉลี่ย ตัวแปร z - ตัวแปรผู้ช่วยเหลือฟังก์ชันใช้ตัวแปร i เพื่อกำหนดว่าค่าใดของรายการจะได้รับการพิจารณาในการคำนวณค่าเฉลี่ยถัดไป เมื่อทำซ้ำทุกครั้ง i ตัวแปรจะชี้ไปที่ค่าสุดท้ายในรายการที่จะใช้ในการคำนวณโดยเฉลี่ย ดังนั้นเราจะต้องคิดออกซึ่งจะเป็นค่าแรกในรายการ มักจะต้องพิจารณาองค์ประกอบ p ดังนั้นองค์ประกอบแรกจะเป็นดัชนีที่จัดทำดัชนีโดย (i-p1) อย่างไรก็ตามในการทำซ้ำครั้งแรกที่การคำนวณมักจะเป็นค่าลบดังนั้นสมการต่อไปนี้จะหลีกเลี่ยงดัชนีเชิงลบ: max (i-p1,1) หรือการจัดสมการ max (i-p, 0) 1 แต่จำนวนขององค์ประกอบในการทำซ้ำครั้งแรกจะเล็กลงค่าที่ถูกต้องจะเป็น (ดัชนีสิ้น - เริ่มดัชนีที่ 1) หรือการจัดสมการ (i - (max (ip, 0) 1) 1) แล้ว , (i-max (ip, 0)) ตัวแปร z มีค่าร่วมกัน (max (ip), 0) ดังนั้น beginindex จะเป็น (z1) และ numberofelements จะเป็น (iz) mid (list, z1, iz) จะคืนค่ารายการที่จะรวมเป็นค่าเฉลี่ย ( .) จะรวมพวกเขา sum (.) (iz) ri จะเฉลี่ยพวกเขาและเก็บผลในสถานที่ที่เหมาะสมในรายการผลลัพธ์ fp1 สร้างโปรแกรมบางส่วนกำหนด (ในกรณีนี้) พารามิเตอร์ที่สองและสาม Im coding อะไรในขณะนี้ ที่อิ่มใช้พวงของค่าในช่วงเวลาจากเข็มทิศฮาร์ดแวร์ เข็มทิศนี้มีความถูกต้องและมีการอัปเดตบ่อยมากและด้วยเหตุนี้ถ้าหากกระตุกเล็กน้อยก็จะมีค่าคี่ที่ไม่สอดคล้องกับประเทศเพื่อนบ้าน ฉันต้องการทำให้คุณค่าเหล่านี้ราบรื่น หลังจากอ่านรอบแล้วดูเหมือนว่าสิ่งที่ฉันต้องการคือตัวกรองความถี่สูงตัวกรองความถี่ต่ำหรือค่าเฉลี่ยเคลื่อนที่ การย้ายค่าเฉลี่ยฉันสามารถลงได้เพียงเก็บประวัติของ 5 ค่าล่าสุดหรือสิ่งใดและใช้ค่าเฉลี่ยของค่าที่ปลายน้ำในโค้ดของฉันซึ่งฉันเพิ่งใช้ค่าล่าสุด ที่ควรฉันคิดว่าเรียบออก jiggles เหล่านั้นอย่าง แต่นัดฉันว่ามันอาจจะค่อนข้างไม่มีประสิทธิภาพและอาจเป็นหนึ่งในปัญหาที่รู้จักกันในการเขียนโปรแกรมที่เหมาะสมที่ theres แก้ปัญหาจริงๆฉลาด Clever. อย่างไรก็ตามฉันเป็นหนึ่งในโปรแกรมเมอร์ที่สอนตัวเองด้วยตัวเองโดยไม่ได้รับการศึกษาอย่างเป็นทางการในเรื่องใด ๆ ที่เกี่ยวข้องกับ CompSci หรือ Math อย่างคลุมเครือ อ่านรอบ bit แนะนำว่าอาจเป็นตัวกรอง pass สูงหรือต่ำ แต่ฉันลาดเทหาสิ่งที่อธิบายในแง่เข้าใจกับสับเช่นฉันว่าผลของขั้นตอนวิธีเหล่านี้จะอยู่ในอาร์เรย์ของค่านับประสาคณิตศาสตร์. โรงงาน คำตอบให้ที่นี่ เช่นในทางเทคนิคจะตอบคำถามของฉัน แต่ในแง่เข้าใจกับผู้ที่อาจจะรู้วิธีแก้ปัญหาแล้ว มันจะเป็นคนที่น่ารักและฉลาดจริงๆที่สามารถอธิบายการเรียงลำดับของปัญหานี้และวิธีการแก้ปัญหาการทำงานในแง่ที่เข้าใจการศึกษาศิลป์ ถาม 21 ก. ย. 52 เวลา 13:01 ถ้าค่าเฉลี่ยเคลื่อนที่ของคุณต้องยาวเพื่อให้ได้ความเรียบที่ต้องการและคุณไม่จำเป็นต้องมีเคอร์เนลใด ๆ เป็นพิเศษคุณก็จะดีกว่าถ้าคุณใช้ค่าเฉลี่ยเคลื่อนที่ที่สลายตัวแบบชี้แจง: ที่คุณ เลือกเล็ก ๆ ให้เป็นค่าคงที่ที่เหมาะสม (เช่นถ้าคุณเลือกขนาดเล็ก 1 - 1N จะมีค่าเฉลี่ยเท่ากันเป็นหน้าต่างขนาด N แต่กระจายแตกต่างกันไปตามจุดที่เก่ากว่า) อย่างไรก็ตามเนื่องจากค่าเฉลี่ยต่อไปของค่าเฉลี่ยเคลื่อนที่จะขึ้นอยู่กับข้อมูลก่อนหน้านี้และข้อมูลของคุณคุณไม่จำเป็นต้องเก็บคิวหรืออะไรเลย และคุณสามารถคิดเช่นนี้ได้เช่นการทำอะไรบางอย่างอย่างเช่น Well, Ive ได้รับจุดใหม่ แต่ฉันไม่ไว้วางใจมันจริงๆดังนั้นฉันจะเก็บค่าประมาณเก่าของการวัดของฉันไว้ 80 คะแนนและเชื่อใจเฉพาะจุดข้อมูลใหม่นี้ได้ 20. Thats สวยมากเช่นเดียวกับว่าดีฉันแค่ไว้ใจจุดใหม่ 20 และป่วยใช้ 4 จุดอื่น ๆ ที่ฉันไว้ใจในจำนวนเดียวกันยกเว้นที่ชัดเจนในการ 4 จุดอื่น youre สมมติว่าค่าเฉลี่ยที่คุณได้ครั้งล่าสุด มีเหตุผลเพื่อให้คุณสามารถใช้งานก่อนหน้านี้ได้ ตอบ Sep 21 10 at 14:27 Hey, ฉันรู้ว่านี่เป็นเวลา 5 ปี แต่ขอบคุณสำหรับคำตอบที่น่ากลัว ฉันกำลังทำงานกับเกมที่เสียงเปลี่ยนไปตามความเร็วของคุณ แต่เนื่องจากมีการเรียกใช้เกมบนคอมพิวเตอร์ที่มีความเร็วต่ำความเร็วจะแปรผันอย่างรุนแรงซึ่งเหมาะสำหรับพวงมาลัย แต่ก็น่ารำคาญมากในแง่ของเสียง นี่เป็นโซลูชันที่ง่ายและราคาถูกจริงๆสำหรับสิ่งที่ฉันคิดว่าเป็นปัญหาที่ซับซ้อนมาก ndash Adam Mar 16 15 at 20:20 หากคุณกำลังพยายามลบค่าแปลก ๆ เป็นครั้งคราวตัวกรองความถี่ต่ำจะเป็นตัวเลือกที่ดีที่สุดในสามตัวเลือกที่คุณระบุ ตัวกรองความถี่ต่ำช่วยให้สามารถเปลี่ยนความเร็วต่ำเช่นการหมุนด้วยเข็มทิศโดยใช้มือขณะที่ปฏิเสธการเปลี่ยนแปลงความเร็วสูงเช่นการเปลี่ยนแปลงที่เกิดจากการกระแทกบนท้องถนนเช่น ค่าเฉลี่ยเคลื่อนที่อาจไม่เพียงพอเนื่องจากผลกระทบของการ blip เดียวในข้อมูลของคุณจะมีผลต่อค่าที่ตามมาหลายค่าขึ้นอยู่กับขนาดของหน้าต่างเฉลี่ยที่เคลื่อนที่โดยเฉลี่ย ถ้าค่าคี่ถูกตรวจจับได้ง่ายคุณอาจจะดีกว่าด้วยอัลกอริธึมการกำจัดสัญญาณผิดพลาดที่สมบูรณ์ละเว้นข้อมูลต่อไปนี้เป็นกราฟ guick เพื่อแสดงให้เห็น: กราฟแรกเป็นสัญญาณอินพุต กราฟที่สองแสดงผลของค่าเฉลี่ยเคลื่อนที่ 10 ตัวอย่าง กราฟสุดท้ายคือการรวมกันของค่าเฉลี่ย 10 ตัวอย่างและอัลกอริธึมการตรวจจับความผิดพลาดแบบง่ายๆที่แสดงข้างต้น เมื่อมีการตรวจจับความผิดปกติจะใช้ค่าเฉลี่ย 10 ตัวอย่างแทนที่จะใช้ค่าจริง การย้ายค่าเฉลี่ยฉันสามารถลงด้วยได้ แต่ก็นัดฉันว่ามันอาจจะค่อนข้างไม่มีประสิทธิภาพ Theres จริงๆไม่มีเหตุผลที่ค่าเฉลี่ยเคลื่อนที่ควรจะไม่มีประสิทธิภาพ คุณเก็บจำนวนจุดข้อมูลที่คุณต้องการในบัฟเฟอร์บางส่วน (เช่นคิวแบบวงกลม) ในแต่ละจุดข้อมูลใหม่คุณจะป็อปค่าที่เก่าแก่ที่สุดและลบออกจากผลรวมและดันข้อมูลใหม่ล่าสุดและเพิ่มลงในยอดรวม ดังนั้นทุกจุดข้อมูลใหม่จริงๆ entails เท่านั้นที่นำมาบวกและลบ ค่าเฉลี่ยเคลื่อนที่ของคุณคือจำนวนเชิงซ้อนที่หารด้วยจำนวนค่าในบัฟเฟอร์ของคุณ มีปัญหาเล็กน้อยหากคุณได้รับข้อมูลพร้อม ๆ กันจากหลายเธรด แต่เนื่องจากข้อมูลของคุณมาจากอุปกรณ์ฮาร์ดแวร์ที่น่าสงสัยมากทีเดียว ค่าเฉลี่ยเคลื่อนที่ดูเหมือนไม่มีประสิทธิภาพสำหรับฉันเพราะคุณต้องเก็บบัฟเฟอร์ค่า - ดีกว่าแค่ทำคณิตศาสตร์เคลฟเวอร์บางอย่างที่มีค่าอินพุทและค่าที่ใช้ในปัจจุบันฉันคิดว่าเป็นวิธีการเฉลี่ยที่ชี้แจง โรงงาน การเพิ่มประสิทธิภาพที่ฉันได้เห็นสำหรับค่าเฉลี่ยเคลื่อนที่นี้คือการใช้แอมป์คิวที่มีความยาวคงที่เป็นตัวชี้ไปยังที่ที่คุณอยู่ในคิวนั้นและเพียงแค่เอาตัวชี้ไปรอบ ๆ (ด้วยหรือถ้า) Voila ไม่มี pushpop ที่มีราคาแพง Power for the amateurs พี่ชายของ Henry Cooke Sep 22 10 at 0:54 Henry: สำหรับค่าเฉลี่ยเคลื่อนที่แบบตรงๆคุณต้องใช้บัฟเฟอร์เพียงเพื่อให้คุณรู้ว่าค่าใดจะได้รับเมื่อมีการดันค่าถัดไป ที่กล่าวว่าแอมป์คิวยาวความยาวที่คุณกำลังอธิบายคือสิ่งที่ฉันหมายถึงคิวคิวเลขสี่เหลี่ยมนั่นคือเหตุผลที่ฉันบอกว่ามันไม่ได้มีประสิทธิภาพ สิ่งที่คุณคิดว่าฉันหมายถึงและหากการตอบสนองของคุณเป็นแถว quotan ที่จะเปลี่ยนค่าของมันกลับทุกครั้งที่ทำดัชนีเอา (เช่น std :: vector ใน C) ดีฉันก็เลยเจ็บฉันไม่ต้องการพูดคุยกับคุณอีกต่อไป) ndash Dan Tao Sep 22 10 at 1:58 Henry: ฉันไม่รู้เกี่ยวกับ AS3 แต่โปรแกรมเมอร์ Java มีคอลเล็กชันเช่น CircularQueue ที่การกำจัดตัวเอง (I39m ไม่ใช่ a นักพัฒนา Java ดังนั้นฉันแน่ใจว่ามีตัวอย่างที่ดีกว่านั่นคือสิ่งที่ฉันค้นพบจากการค้นหาของ Google อย่างรวดเร็ว) ซึ่งใช้งานฟังก์ชันที่เรากำลังพูดถึงอย่างแม่นยำ I39m ค่อนข้างมั่นใจภาษากลางและระดับล่างส่วนใหญ่ที่มีไลบรารีมาตรฐานมีบางอย่างที่คล้ายคลึงกัน (เช่นใน QueueltTgt) อย่างไรก็ตามผมเองก็เป็นปรัชญาด้วยเช่นกัน ทั้งหมดได้รับการอภัยแล้ว ndash Dan Tao Sep 22 10 at 12:44 ค่าเฉลี่ยเคลื่อนที่ที่สลายตัวตามเกณฑ์คงที่สามารถคำนวณด้วยมือโดยมีแนวโน้มเฉพาะถ้าคุณใช้ค่าที่ถูกต้อง ดู fourmilab. chhackdiete4 สำหรับความคิดเกี่ยวกับวิธีการทำเช่นนี้ได้อย่างรวดเร็วด้วยปากกาและกระดาษถ้าคุณต้องการหาค่าเฉลี่ยเคลื่อนที่ที่ถัวตามแบบเร่งด่วนด้วยการให้เรียบ 10 ครั้ง แต่เนื่องจากคุณมีคอมพิวเตอร์คุณอาจต้องการทำแบบไบนารีขยับตรงข้ามกับการหมุนเลขทศนิยม) วิธีนี้สิ่งที่คุณต้องเป็นตัวแปรสำหรับค่าปัจจุบันของคุณและค่าเฉลี่ย ค่าเฉลี่ยต่อไปจะสามารถคำนวณได้จากที่นั่น ตอบ Sep 21 10 at 14:39 theres เทคนิคที่เรียกว่าประตูช่วงที่ทำงานได้ดีกับต่ำปลอมตัวอย่างปลอม สมมติว่ามีการใช้เทคนิคตัวกรองดังกล่าวข้างต้น (ค่าเฉลี่ยเคลื่อนที่เลขยกกำลัง) เมื่อคุณมีประวัติที่เพียงพอ (หนึ่งค่าคงที่) คุณสามารถทดสอบตัวอย่างข้อมูลใหม่ที่เข้ามาได้เพื่อความสมเหตุสมผลก่อนที่จะถูกเพิ่มลงในการคำนวณ ต้องมีความรู้เกี่ยวกับอัตราการเปลี่ยนสัญญาณที่เหมาะสมที่สุด ตัวอย่างค่าดิบจะถูกเปรียบเทียบกับค่าที่ได้รับการปรับปรุงล่าสุดและถ้าค่าสัมบูรณ์ของความแตกต่างนั้นมากกว่าช่วงที่อนุญาตให้ใช้ตัวอย่างที่ถูกโยนออก (หรือแทนที่ด้วยฮิวริสติกบางส่วนเช่นการคาดการณ์ตามค่าความลาดเอียงหรือแนวโน้ม ค่าพยากรณ์จากการเรียบแบบทวีคูณสองครั้ง) ตอบเมื่อ 30 เมษายน 16 เวลา 6:56 น

Comments