6. Derece Çoklu Yardım! - sayfa 2

 
gooly :

Merhaba dennisj2,

Formülünüze gerçekten ihtiyacınız olduğuna emin misiniz?

İlk önce Kalman, Ehlers, Gauss, Jurik (JMA), DEMA gibi diğer filtreleri aramayı deneyebilirsiniz. Çoğu düşük geçişli (fiziksel) frekans filtrelerinden türetilmiştir ve çoğu mt4 koduna girmenin yolunu bulmuşlardır.

Daha uzun bir dönem kümesine sahip bir JMA olabilir (birçok varyasyon vardır) aradığınızı yapar mı?



Araştırabileceğim linkler var mı?

 
dennisj2 :



SDC - şimdi benimle aynı seviyedesiniz - bulduğum doğrusal regresyon formülü işe yarıyor - ve aynı sonuçları veren iki farklı formül var. Peşinde olduğumuz şey lineer regresyon (düz bir trend çizgisi) ise bu formüller harikadır.

İlk olarak, bazı referans materyalleri:

Microsoft: http://office.microsoft.com/en-us/excel-help/linest-HP005209155.aspx

IntegralCalc:https://www.youtube.com/watch?v=1pawL_5QYxE&noredirect=1


Doğrusal regresyon denklemi y = mx + b verildiğinde:

Burada y = fiyat, (örneğin, Kapat[x])

ve x = dizin (örneğin, Çubuk[x])

ve m = Eğim (her (x,y) çiftine uygulanan katsayı)

ve b = Y kesme noktası (her (x,y) çiftine uygulanan Y kesmesinin temel değeri)


Yöntem A: IntegralCalc'den Yöntem B: Microsoft'tan (burada x(üst çubuk) ve y(üst çubuk) anlamına gelir)


n. dereceye kadar polinom regresyon trend çizgisi formülünün bile uygulanması nispeten kolaydır:

Verilen formül: y = m1*x1 + m2*x2 + m3*x3 + ... + b

Burada x, y, m ve b değişkenleri lineer denklemde açıklananla aynı tanımı taşır.

Görünüşe göre her şeye sahibim, peki eksik olan ne?

Eksik olan, bir polinom regresyonu için m (Eğim) ve b (Y-kesme noktası) hesaplamasıdır; bu değerlerin hesaplanması için doğrusal denklem, bir polinom regresyonu için geçerli değildir. Öğrendiğim kadarıyla, polinom regresyonu, bir matris kullanarak bir polinom denklem sistemine dayalı olarak en küçük kareleri hesaplayan bir formül gerektiriyor. Yukarıdaki örnek grafiklere bakın. İlk grafikte, poli(6) çizgileri kesinlikle kusursuzdur - üstler ve altlar açıkça belirtilmiştir. Bu verilerle, alım satımları bugün yaptığımdan daha uzun süre tutabileceğim, nihayetinde alım satım başına ortalama pipimi ikiye katlayarak potansiyel olarak üç katına çıkaracağım.

İkinci grafikte, eğim katsayılarını çözmek için bir gauss matrisi kullanan i-regr yöntemine karşı poly(6)'nın sonuçlarını gösteriyorum - ve söylemeye gerek yok ki, önemli gecikme süresi nedeniyle oldukça işe yaramaz. yöntem. Öte yandan, basit bir hareketli ortalama daha da kötüdür - SMA, EA'mın aşırı tepki vermesine neden olabilecek ara piyasa düzeltmeleri sırasında çok fazla hassastır.

Gerçek bir polinom regresyon göstergesi geliştirmesi için birine ödeme yapmaya hazırım - ancak sonuçlar kesinlikle Excel'in ürettiği sonuçları yansıtmalı. LINEST() işlevi, katsayıları hesaplamak için çok fazla vudu'nun kullanıldığı bir kara kutudur. Oldukça basit, bu vuduyu anlamam gerekiyor.

Güncelleme: Excel'de uygulanan yöntemi gösteren bir dosya ekledim.


Bir süre önce lineer bir regresyon kodladım, kodumun bağlantısı burada: Lineer regresyon %100 doğru olduğunu garanti etmiyorum, sanırım bazılarını düzelttiğim hesaplamalarda sıfır x indeksini kullanmakla ilgili bir sorun tespit ettim. zaman sonra.

Bunun hareketli bir versiyonunu da kodladım, hareketli versiyon düzgünleştirilmiş hareketli ortalamaya benzer bir parabol oluşturuyor çünkü her çubukta sadece lineer regresyon çizgisinin son koordinatını çiziyor.

Hattınız için 2. derece poli nominal kullanmayı öğrenmeye çalışıyorum. Bunu ikinci dereceden bir şekilde yapabilirsek, bunu 6. derece ile genişletebiliriz diye düşündüm.

Bağlantılarınızı okuyacağım ve bir şeyler öğrenip öğrenemeyeceğime bakacağım,

 
SDC :

Bir süre önce bir lineer regresyon kodladım, kodumun bağlantısı burada: Lineer regresyon %100 doğru olduğunu garanti etmiyorum, sanırım bazılarını düzelttiğim hesaplamalarda sıfır x indeksini kullanmakla ilgili bir sorun tespit ettim. zaman sonra.

Bunun hareketli bir versiyonunu da kodladım, hareketli versiyon düzgünleştirilmiş hareketli ortalamaya benzer bir parabol yaratıyor çünkü her çubukta sadece lineer regresyonun son koordinatını çiziyor.

Hattınız için 2. derece poli nominal kullanmayı öğrenmeye çalışıyorum. Bunu ikinci dereceden bir şekilde yapabilirsek, bunu 6. derece ile genişletebiliriz diye düşündüm.

Bağlantılarınızı okuyacağım ve bir şeyler öğrenip öğrenemeyeceğime bakacağım,


SDC: Katılıyorum - bir ikinci dereceden yeterli olmayabilir, ancak daha yüksek derecelere genişletmek için bir kübikin yeterli olabileceğine inanma eğilimindeyim.
 
dennisj2 :


Araştırabileceğim linkler var mı?

Sadece google: mt4 göstergesi

sonra isimlerden biri..

(alçak geçiren) filtre eklemiş olabilirsiniz.

Bazıları mt4 kod tabanındadır - bazıları sadece değildir ve harici bağlantılar göndermemeliyiz..

 
SDC: Başka bir bağlantım var - tam olarak ihtiyacımız olan şey olabilir
 
Sadece regresyonun eğri uydurma olduğunu ve birisinin daha önce işaret ettiği gibi regresyonların yeniden boyandığını unutmayın. Saf eğri uydurmanın tahmini değerinin ne olduğundan emin değilim. Kendi deneylerime göre tahmin değerleri çok iyi değildi.
 
rocketman99 :
Sadece regresyonun eğri uydurma olduğunu ve birisinin daha önce işaret ettiği gibi regresyonların yeniden boyandığını unutmayın. Saf eğri uydurmanın tahmini değerinin ne olduğundan emin değilim. Kendi deneylerime göre tahmin değerleri çok iyi değildi.



Roket Adam,

Kısmen katılıyorum, regresyon modelleri tarihsel eğilimleri yeniden çizmeye eğilimlidir ve çok güvenilir değildir. Bu açıkça i-regr göstergesinin durumudur - Son birkaç gündür bu göstergenin canlı performansını izliyorum ve dürüstçe söyleyebilirim ki bu gösterge üç nedenden dolayı değer sunmuyor: 1) kısa vadeli düzeltmelere karşı aşırı duyarlı ve 2) göstergenin uzun pozisyonlar için alt sınır giriş noktasını veya kısa pozisyonlar için üst sınırı boyadığı zamana kadar ciddi gecikmesi (e-regr EA ile), piyasa giriş noktalarının çok ötesine geçmiştir ve çoğu durumda , piyasa eğilimine aykırıdır ve 3) yalnızca gözlemden, piyasa yükselişe geçtiğinde gösterge aşağıyı gösteriyordu ve tam tersi, bu nedenle yönlü bir eğilim göstergesi olarak kullanımı en iyi ihtimalle %50 güvenilirdir.

Geçen hafta USDJPY 102.35-102.50 alanı civarındaydı, i-regr aşağı yönlü bir piyasa eğilimi gösterdi (aşağı eğimliydi ve aşağı hareket ediyordu), e-regr bir satış yaptı, ardından gösterge uzuna kaydıktan sadece 5 dönem sonra ve USDJPY 104.20'ye yükseldiği sürece her zaman olmuş gibi yeniden boyandı.20

Yeniden boyama tipi göstergelerin hiçbir değer sağlamadığı ve güvenilir olmadığı noktayı desteklemek için - mevcut MQL4 kitaplıklarında üzerinde çalıştığımı gördüklerim göz önüne alındığında, sizi temin ederim ki bu göstergelerle çalışanlar tarafından ifade edilen hayal kırıklığını anlıyorum - sahip olduklarımız göz önüne alındığında, hiçbir şey işe yaramaz. Bununla birlikte, hala 6. dereceye kadar hesaplayan güvenilir bir polinom regresyon göstergesi görmedim. Ayrıca, güvenilir bir polinom regresyonuna sahip olduğumuzda, sonuçların muhteşem olacağından emin olacağım.

 
dennisj2 :



Roket Adam,

Kısmen katılıyorum, regresyon modelleri tarihsel eğilimleri yeniden çizmeye eğilimlidir ve çok güvenilir değildir. Bu açıkça i-regr göstergesinin durumudur - Son birkaç gündür bu göstergenin canlı performansını izliyorum ve dürüstçe söyleyebilirim ki bu gösterge üç nedenden dolayı değer sunmuyor: 1) kısa vadeli düzeltmelere karşı aşırı duyarlı ve 2) göstergenin uzun pozisyonlar için alt sınır giriş noktasını veya kısa pozisyonlar için üst sınırı boyadığı zamana kadar ciddi gecikmesi (e-regr EA ile), piyasa giriş noktalarının çok ötesine geçmiştir ve çoğu durumda , piyasa eğilimine aykırıdır ve 3) yalnızca gözlemden, piyasa yükselişe geçtiğinde gösterge aşağıyı gösteriyordu ve tam tersi, bu nedenle yönlü bir eğilim göstergesi olarak kullanımı en iyi ihtimalle %50 güvenilirdir.

Geçen hafta USDJPY 102.35-102.50 alanı civarındaydı, i-regr aşağı yönlü bir piyasa eğilimi gösterdi (aşağı eğimliydi ve aşağı hareket ediyordu), e-regr bir satış yaptı, ardından gösterge uzuna kaydıktan sadece 5 dönem sonra ve USDJPY 104.20'ye yükseldiği sürece her zaman olmuş gibi yeniden boyandı.20

Yeniden boyama tipi göstergelerin hiçbir değer sağlamadığı ve güvenilir olmadığı noktayı desteklemek için - mevcut MQL4 kitaplıklarında üzerinde çalıştığımı gördüklerim göz önüne alındığında, sizi temin ederim ki bu göstergelerle çalışanlar tarafından ifade edilen hayal kırıklığını anlıyorum - sahip olduklarımız göz önüne alındığında, hiçbir şey işe yaramaz. Bununla birlikte, hala 6. dereceye kadar hesaplayan güvenilir bir polinom regresyon göstergesi görmedim. Ayrıca, güvenilir bir polinom regresyonuna sahip olduğumuzda, sonuçların muhteşem olacağından emin olacağım.




Ben bir matematikçi değilim, ancak herhangi bir regresyon biçimiyle ilgili deneyimim pek iyi değildi. Sizin de belirttiğiniz gibi, sonuçta daha iyi bir istatistiksel eğri uyumu ile sonuçlanabilecek regresyonlar yapmanın birçok yolu vardır. Ancak soru, tahmin gücünde kalıyor.

Bu konuda gerçekten sıkı olmak istiyorsanız, R'yi araştırmanız ve mevcut bazı gelişmiş regresyonları denemeniz gerekir (ARIMA için google, ARCH/GARCH vb.): http://talksonmarkets.files.wordpress.com/2012/09 /time-serisi-analiz-with-arima-e28093-arch013.pdf

Bu konuya haftalarca harcadım ve ayrıca eş bütünleşmeyi araştırdım ve başarım sıfıra yakındı.

Bu gelişmiş istatistiksel analiz için MQL4 kodlamasının göreve bağlı olduğunu düşünmüyorum.

 

peki, hmmm hmmm.....

I don't think MQL4 coding is up to the task for this advanced statistical analysis.

MQL'de her şey yapılabilir, sınırlayıcı faktör bu değildir. Bu kaynaklarımızdan birini taşımak yeterli olacak gibi görünüyor:
http: //rosettacode.org/wiki/Polynomial_regression

Bir P6 (6. dereceden polinom) regresyonunu çözmek, farklı bir sayısal fonksiyon üzerinde 6 değişkenli 6 denklemlik bir sistemi çözmektir, bu belki basit değildir, ancak yapılması imkansız değildir.

i_regr.mq4'te tam olarak hangi yöntemin kullanıldığına daha sonra bakabilirim.

herhangi bir gerileme biçimiyle ilgili deneyimim çok iyi değildi

Kabul etmeliyim ki, ilk yorumumun amacı buydu. Çünkü ... ne yapıyoruz? Bu durumda, rastgele eğrinin (gerçek PA (Fiyat Hareketi)) kısmı ile P6'ya uyuyoruz. Ve sonra PA'nın bir sonraki noktasının bu eğrinin devamı gibi davranmasını mı bekliyoruz?

Tamam, görünüşe göre Dennis bu eğriyi PA'nın küçük gecikmeli dönüşüm fonksiyonu olarak kullanıyor ve bunun bir anlamı var, ancak bu ne kadar iyi olabilir? Bu, gürültü filtrelemesi nedeniyle daha yüksek TF'de yapılmalıdır ve bu tür ticaret stratejisindeki sorun olan PA'nın aralığına girdiğinde kayıpları önlemenin mümkün olacağını düşünmüyorum.


bu gösterge üç nedenden dolayı değer sunmaz: 1) kısa vadeli düzeltmelere karşı aşırı duyarlıdır ve 2) gösterge uzun pozisyonlar için alt sınır giriş noktasını veya üst sınırı boyadığında ciddi gecikmesi (e-regr EA ile) Kısa pozisyonlara bağlı olan piyasa, giriş noktalarının çok ötesine geçmiştir ve çoğu durumda, piyasa eğilimine aykırıdır ve 3) yalnızca gözlemden, piyasa yükseldiğinde, gösterge aşağıyı gösteriyordu ve bunun tersi de geçerliydi. yönlü eğilim göstergesi olarak kullanımı en iyi ihtimalle %50 güvenilirdir

Eh, i-regr o kadar da kötü çalışmıyor. Eylem halinde görmek için, e-regr.mq4'ün görsel mod backtest'ini kullanın ve göstergeyi test penceresine bırakın.
Sanırım bir tür hızlı regresyon veya enterpolasyon kullanıyor, ancak sonucu o kadar da kötü değil. PA'yı takip eder ve eğriye uyum sağlar.

Puanlarınız:
1) tüm göstergeler vardır. bu genellikle filtre veya daha yüksek TF olarak başka bir gösterge türü ekleyerek çözülür.
2) iyi, daha iyi eğri uydurma ile gecikme artacaktır. ama asıl sorun gecikme değil, e-kayıt giriş kriterleri. sabit boyutlu kanalın kenarlarında tetiklenen karşı eğilim? trend değişikliği için yeterli iyileşme olmadan? gerçek para yönetimi olmadan? gülünç.
birincil fikrim, regresyon eğrisi yönünün değişmesi üzerine giriş/çıkış olacaktır, ancak tam bir yeniden boyama göstergesinin bunun için nasıl iyi olacağından hala emin değilim.

Her neyse, giriş/çıkış için farklı belirleme katsayısına sahip iki regresyon eğrisinin kesişimini kullandığınız izlenimini edindim.

 
T

Evet, Graziani'nin dediği gibi her şeyi mql4'te kodlayabiliriz, her şey bu matematiği nasıl uygulayacağımızı ne kadar iyi anladığımıza bağlı.

Yeniden boyamaya gelince, bu bir sorun olmayacak, umursadığımız tek çubuk, mevcut fiyat ticaret çubuğu olan sıfır çubuktur. Bunu kodlama şeklim (matematiği çözebileceğimizi varsayarsak) son n çubuktan fiyatlar üzerinde denklem yapılacak, sıfır çubuğu için sonuç değeri çizilecek, önceki tüm çubuklardaki satır bırakılacak. önceki hesaplamadan nasıldı. Birincisi, yalnızca sıfır çubuğunda işlem yapabildiğimizde tüm çizgiyi herhangi bir grafik geçmişine yeniden yerleştirmeye gerek yoktur ve ikinci olarak, canlı fiyat çubuğu olduğunda çizginin her bir çubuğa nasıl uygulandığının gerçek bir geçmişini gösterir.

Dennis'in Yayınladığı Polinominal Regresyon bağlantısından bunu uyarlanabilir bir gösterge açısından çok ilginç buldum.

" Polinom regresyonda, X değişkeninin (X, X 2 , X 3 …) farklı güçleri, r 2'yi önemli ölçüde artırıp artırmadıklarını görmek için bir denkleme eklenir. İlk önce, Y biçiminde bir denkleme uyan bir doğrusal regresyon yapılır. =a+bX verilere.O zaman bir parabol üreten Y=a+b1X+b2X 2 biçimindeki bir denklem verilere uygundur.Daha yüksek dereceli bir terim eklediğinizde r 2 her zaman artacaktır, ancak soru, r 2'deki artışın şans nedeniyle beklenenden önemli ölçüde daha büyük olup olmadığıdır.Sonra, S şeklinde bir çizgi oluşturan Y=a+b1X+b2X 2 + b3X3 biçimindeki bir denklem uygundur ve artış r 2'de test edilir. Bu, başka bir terim eklenmesi r 2'yi önemli ölçüde artırmayana kadar devam edebilir "

Bunu kodlamak için bilmemiz gereken tek şey bu olabilir, yazarın y=ax 2 +bx+c yerine y=a+b1X+b2X 2 nasıl yazdığına dikkat edin? Beni ürküten de buydu, c'nin tamamen farklı bir katsayı olması gerektiğini düşündüm. Bu makaleden y=ax 6 +bx 5 +cx 4 +dx 3 +ex 2 +fx+g'deki c,d,e,f,g katsayıları, lineer regresyondan zaten bildiğimiz b ile doğrudan ilişkilidir. , eğimdir.

Gerçekten bu kadar basit olduğuna inanmakta güçlük çektiğimi söyledikten sonra? Gerçekten y=a+b1X+b2X 2 +b3X 3 +b4X 4 +b5X 5 +b6X 6 olarak yazılabiliyorsa neden a,b,c,d,e,f,g, katsayıları yazsınlar? Ayrıca Dennis'in dediği gibi, diğer makaleler lineer bir regresyonda olduğu gibi eğim kesişimini öneriyor gibi görünüyor, poli regresyon için geçerli değil. Bazen bu şeyleri ilerlerken uydurmuyorlar mı diye merak ediyorum.

Bunun yanı sıra, makale, biz çoklu çizgi denklemindeki artışları derece olarak test ederken, r 2'nin çizginin veri eğrisine ne kadar iyi uyduğunu ölçmek için kullanılabileceğini ima ediyor gibi görünüyor,

r 2'nin varyansla bir ilgisi olabileceğini düşünüyorum? Biri kesin olarak r 2'nin ne olduğunu söyleyebilir mi?

Neden: