Enterpolasyon, yaklaşıklık ve diğerleri (paket alglib) - sayfa 10

 
Nikolai Semko :

Dürüst olmak gerekirse - bir tür kar fırtınası taşıyorsunuz.
Eğer fonksiyon, genişlemenin yapıldığı aralığa eşit bir periyoda sahip periyodik ise, o zaman neden yaklaşıklık ve ekstrapolasyon gerekli?

Sadece son 1000 çubuğu kopyalayın ve onları sağdaki son çubuğa yapıştırın ve işte - tahmin hazır.


İlk mesajda yazmıştım ;))))))). Kar fırtınası ile ilgili olarak - tanıdık olmayan insanlarla iletişim kurmanız çok mu geleneksel?

Ve ilerisi:


Nikolay Semko :

Bu formüllerin anlamını bile anlıyor musunuz?

Peki, Uygulamalı Matematik Bölümü çalışanı ve bir üniversitede matematik öğretmeni geçmişte bu kadar karmaşık formülleri nasıl anladı? ;))))))))
Bir kez daha - yaptığınız şeyin fiziksel anlamını anlamaya çalışın.

 
Vladyslav Goshkov :

İlk mesajda yazmıştım ;))))))). Kar fırtınası ile ilgili olarak - tanıdık olmayan insanlarla iletişim kurmanız çok mu geleneksel?

Ve ilerisi:

Peki, Uygulamalı Matematik Bölümü çalışanı ve bir üniversitede matematik öğretmeni geçmişte bu kadar karmaşık formülleri nasıl anladı? ;))))))))
Bir kez daha - yaptığınız şeyin fiziksel anlamını anlamaya çalışın.

Sanırım kafa karışıklığının kaynağını anlıyorum.
Bu yazımda, eşit aralıklı frekansları kullanan Fast Fourier Dönüşümü kullanmadığımı yazdım.

Bu tür dönüştürmenin farklı bir amacı vardır - esas olarak müziği sıkıştırmak için kullanılır. Ve harmoniklerin tüm periyotlarının toplam gözlemlenen periyoda birden çok kez uyduğu gerçeği göz önüne alındığında, o zaman bu tür bir dönüşümün gerçekten de ortak bir periyodu var, bahsettiğiniz şey buydu. Ancak bu görüş, ekstrapolasyon için uygun değildir, çünkü ekstrapolasyon basitçe önceki değerleri tekrar edecektir. Bu, tahmin etmeyi değil, bilgiyi sıkıştırmayı amaçlayan çok özel bir durumdur.
Fiyatı tahmin etmek için, bu yazıda yazdığım başka bir genişleme türü kullanılıyor. Bu nedenle, hareketli bir gif kaydettim ve çalışma kodunu verdim. Veri örnek boyutuna eşit bir periyodiklik yoktur. Orada, her harmoniğin periyodu optimal ve sıralı olarak hesaplanır ve periyotlar her zaman azalan düzende gitmez, bir sonraki harmoniğin periyodu bir öncekinden daha uzun olabilir.
Kar fırtınasından rahatsız olmayın. Sinirler cehenneme değil. :))

 
Nikolai Semko :

Hayır, harmonikleri bulmaya yönelik bu algoritma hızlı Fourier dönüşümünü kullanmaz , Queen-Fernandez frekans hesaplama algoritmasını kullanır . ( orijinal kod kaynağı ) Bu arada, bir saatliğine yazar değil misin? İsim aynı ama profiller farklı.

Frekanslar sırayla hesaplanır ve birbirinin katı değildir. Bu, hem animasyonlu gif'ten hem de yukarıda ve şimdi sunduğum koddan görülebilir.
İşte bu örnekten harmonik frekans faktörlerine bir örnek (sadece w yazdırıldı):

Hayır, yazar değilim. Ve frekansları birbirinin katı olmayan bir dizi trigonometrik fonksiyon bir Fourier serisi değildir.
 
Vladimir :
Hayır, yazar değilim. Ve frekansları birbirinin katı olmayan bir dizi trigonometrik fonksiyon bir Fourier serisi değildir.

Benim yazılarımda Fourier serisinden hiç bahsetmeyeceksiniz. Fourier dönüşümlerinden bahsettim.
Fourier serileri, periyodik bir fonksiyonun Fourier dönüşümünün özel bir halidir.

Fiyat grafiği periyodik bir fonksiyon değildir. Bu nedenle, burada Fourier serilerine ihtiyaç yoktur.

Hızlı Fourier Dönüşümü (FFT - FFT) sadece Fourier serisinin hesaplanmasıyla ilgilenir. Örneklerimde FFT kullanmıyorum.

Periyodik bir fonksiyona uygulanabilen Fourier serisinin Fourier dönüşümü olduğunu düşünmeniz, sizin hatanız ve Vladislav'da budur.

Zaten birkaç kez söyledim - bu pazar için geçerli olmayan özel bir durum.

Birincil kaynakları inceleyin.

İşte Wikipedia'dan bazı alıntılar:


Fourier serisi açılımı, sınırlı aralıklarla tanımlanan fonksiyonlara da uygulanabilir, çünkü bu tür fonksiyonlar periyodik olarak tüm çizgiye genişletilebilir.

Fourier serisi, eğer ikincisi genelleştirilmiş fonksiyonlar anlamında anlaşılırsa, Fourier dönüşümünün özel bir durumudur. Herhangi bir 2 π -periyodik fonksiyon için,


Başka bir deyişle, periyodik bir fonksiyonun Fourier dönüşümü, tamsayı noktalarındaki nokta yüklerinin toplamıdır ve bunların dışında sıfırdır.


 
Nikolai Semko :

Hayır, harmonikleri bulmaya yönelik bu algoritma hızlı Fourier dönüşümünü kullanmaz , Queen-Fernandez frekans hesaplama algoritmasını kullanır . ( orijinal kod kaynağı ) Bu arada, bir saatliğine yazar değil misin? İsim aynı ama profiller farklı.

Frekanslar sırayla hesaplanır ve birbirinin katı değildir. Bu, hem animasyonlu gif'ten hem de yukarıda ve şimdi sunduğum koddan görülebilir.
İşte bu örnekten harmonik frekans faktörlerine bir örnek (sadece w yazdırıldı):

Önerilen yöntem ile Fourier serileri arasındaki farklar hakkındaki soruyu tekrar etmeliyim:

"Ne, yanlış mı yapıyorsun? İlk genleşme katsayılarının değerleri dikkate alınan harmonik sayısı değiştiğinde değişiyor mu?"

40 frekans için animasyon grafiklerinden 40'lık en yavaş harmoniğin katsayılarının sabit olup olmadığını anlayamıyorum.Lütfen kodunuzdaki değişkenlere atıfta bulunmayın. Genişletmenin 40 harmonik cinsinden anlamı sorusu, eğer kırk birinci harmonik genişlemeye eklendiğinde, örneğin birincinin katsayıları işaret bile değiştirebiliyorsa, kilit bir soru haline gelir.

Evet ya da hayır de. Veya daha az katı, herhangi bir şey.

Fourier serisinin bu soruyu açık bir şekilde "Hayır" olarak çözmesine izin verin. Hem de şüphesiz faydalar getiren ve getirmeye devam eden Taylor serisi ve diğer genişlemelerde olduğu gibi. Her ne kadar sizin durumunuzda o kadar açık olmasa da, önerdiğiniz yönteme göre genişleme katsayılarının kararlılığı hakkında da bir fikriniz olmalıdır.

 
Vladimir :

Önerilen yöntem ile Fourier serileri arasındaki farklar hakkındaki soruyu tekrar etmeliyim:

"Ne, yanlış mı yapıyorsun? İlk genleşme katsayılarının değerleri dikkate alınan harmonik sayısı değiştiğinde değişiyor mu?"

40 frekans için animasyon grafiklerinden 40'lık en yavaş harmoniğin katsayılarının sabit olup olmadığını anlayamıyorum.Lütfen kodunuzdaki değişkenlere atıfta bulunmayın. Genişletmenin 40 harmonik cinsinden anlamı sorusu, eğer kırk birinci harmonik genişlemeye eklendiğinde, örneğin birincinin katsayıları işaret bile değiştirebiliyorsa, kilit bir soru haline gelir.

Evet ya da hayır de.

Nasıl hızlandıracağıma dair düşüncelerim olmasına rağmen bu benim yöntemim değil. Kaynak koduna ve bu yöntemin yazarlarına bağlantılar verdim.

Ve en önemlisi - bir kod var. sen programcı değil misin Ancak kodu anlayabilirsiniz, orada her şey basit ve şeffaftır.
MathFourier2 işlevindeki koda bakarsanız, cevap açıktır - elbette hayır. Yeni bir harmonik eklemek öncekileri değiştirmez.

Harmoniklerin değiştiğini fark ederseniz, giriş değişmiştir. Shift veya ctrl tuşlarına basılarak fare hareket ettirildi veya bar yeni bir bar geldi.

Ve lütfen bana bu yöntemin kodu ve makalesi ile cevaplayabileceğiniz daha fazla soru sormayın.

Sınavda değiliz. Zamanım için üzgünüm.

Kodu tekrar sıfırladım.

Bu göstergenin kontrolü şu şekildedir: fare ile grafiğe tıkladıktan sonra (pencereyi etkinleştirmek için), Ctrl tuşuna basın (ve bırakın) ve fareyi hareket ettirerek başlangıç konumunu değiştirin, işlemi tamamlamak için herhangi bir tuşa basın (hariç Ctrl ve Üst Karakter). Periyodu (yaklaşım fonksiyonunu hesaplamak için çubuk aralığı) ve harmoniklerin sayısını değiştirmek için Shift tuşu ile aynı .

Dosyalar:
7Fourier.mq5  16 kb
 

Genel olarak, görev, anladığım kadarıyla, belirli bir süre için veriye sahip olmamız (muhtemelen bunlar bir çubuğun açılış veya kapanış fiyatlarıdır) ve bu örnekteki dalgalanmaları bir şekilde tanımlamamız gerekiyor, ancak aynı zamanda, bir sonraki salınımda yeni basamağın hangi noktaya ait olduğunu anlamak için işlevli olmalıdır. Sonuç olarak, dalgalanmanın fonksiyonun hangi "bölümüne" ait olduğunu gösterecek her fiyat için ek bir dijital değer almalıyız, belirli bir noktaya ait orijinal nokta hakkında konuşmamızı sağlayacak belirli bir sınıflandırma elde edeceğiz. Uzay. Benzer bir yöntemin bazen MO'da etkisi olabilir. Fonksiyon başlangıçta bilinmemekle birlikte var olması beklendiği için örneklemdeki sayıların gruplara ayrılması için farklı fonksiyonların üretilmesine ihtiyaç vardır. Onlar. bu, özelliklere göre değil, yapı ve özelliklere göre bir tür sınıflandırma yöntemidir .

Bu benim tahminim.

 
Aleksey Vyazmikin :

Bu uzun zamandır açık olmalıydı, linkler verdim. Mesele uygulamadır. Dahil olmak üzere kullanılabilecek hızlı verimli algoritmalardan oluşan eksiksiz bir katman vardır. ve bulutla birlikte

sadece materyali incelemek için zamanın var. Her şey uzun zamandır R ve Python'da tabii ki.
 
Maxim Dmitrievsky :

Bu uzun zamandır açık olmalıydı, linkler verdim. Mesele uygulamadır. Dahil olmak üzere kullanılabilecek hızlı verimli algoritmalardan oluşan eksiksiz bir katman vardır. ve bulutla birlikte

sadece materyali incelemek için zamanın var. Her şey uzun zamandır R ve Python'da tabii ki.

Şubeyi okuduktan sonra dinleyicilerin anlayışını göremedim, bu yüzden yeniden ifade etmeye karar verdim, belki birileri bu sunumda konunun özünü anlar.

Bu, diğer dillerde zaten uygulanmışsa, kod neden MQL5'e taşınamıyor?

 
Aleksey Vyazmikin :

Konuyu okuduktan sonra dinleyicilerin anladıklarını göremedim, bu yüzden yeniden ifade etmeye karar verdim, belki birileri bu sunumda konunun özünü anlar.

Bu, diğer dillerde zaten uygulanmışsa, kod neden MQL5'e taşınamıyor?

sadece zaman kazanmak için birinin bir şey yapıp yapmadığını sormak

ne aptalca bir soru