Alım-satım fırsatlarını kaçırıyorsunuz:
- Ücretsiz alım-satım uygulamaları
- İşlem kopyalama için 8.000'den fazla sinyal
- Finansal piyasaları keşfetmek için ekonomik haberler
Kayıt
Giriş yap
Gizlilik ve Veri Koruma Politikasını ve MQL5.com Kullanım Şartlarını kabul edersiniz
Hesabınız yoksa, lütfen kaydolun
Çok özel şeylerle uğraşıyorum, bu yüzden "genel olarak" herhangi bir şeyi tartışmaya meyilli değilim.
Yani daha spesifik olarak.
Caret kabuğunda yaklaşık 140 makine öğrenimi paketi var - çalışmalarımda rastgele ağaç ormanları için iki paket ve destek vektör makineleri (SVM) için bir paket kullanıyorum. Gördüğünüz gibi R'da bulunan makine öğrenimi araçları için herhangi bir genelleme yapmak benim yapabileceğim bir şey değil.
Dahası.
Bu, çok sınırlı Rattle kabuğunu kullanan bir daldır ve bu makalede yalnızca randomforest paketini kullandım.
Dahası.
Söz konusu paketten bu makaledeki fonksiyonların sadece bir kısmını kullandım.
Yazınızı sadece bu sınırlamaları kullanarak yorumlayacağım, ancak program kodunu ve kullanım sonuçlarını sözlerimin altına koyabilirim.
Yani.
1. "Tüm finansal seriler, değerlerin sırasının önemli olduğu sözde zaman serileridir." - Bunu kimse inkar etmiyor ve zaman serisi olsa bile bu düzen bozulmuyor. Modeli P1, P2, P3...Pn fiyatları üzerinde eğittikten sonra, Örneklem Dışı üzerinde test ederken veya bunları gerçekten kullanırken sıralarını değiştirmiyorsunuz.
Bu, belirtilen paketlerle tamamen tutarsızdır. Açıklamanızı diğer paketler içinde uygulamak mümkündür, ancak bu çok daha karmaşık bir kod olacaktır. Makalede kullanılan kod (makine öğrenimi algoritmalarında en yaygın olan yaklaşımdır) aşağıdaki gibidir:
Başlangıç örneği (veri kümesi) üç bölüme ayrılır: train (%70), test(%15), validate(%15). Bölümleme algoritması şu şekildedir: örneğin, train için, orijinal veri kümesinin satırlarının %70'i sıralı olarak değil rastgele seçilir. Kalan %30'un %15'i yine rastgele seçilir. Kalan %15'in de rastgele bir satır dizisi olduğu açıktır. Çubukların sırasına uyulması söz konusu olamaz.
Ancak hepsi bu kadar değil.
Eğitim seti üzerinde yapılan eğitimde verilerin yalnızca bir kısmı (yaklaşık %66'sı) kullanılır. Verinin geri kalan kısmı Örneklem Dışı (OOS) tahminidir. Yani, OOV'nin hesaplandığı çubuklar farklıydı, ancak eğitimin yapıldığı çubuklarla karıştırıldılar. Kağıt bu tahmini verir ve her zaman en iyi performansı verir.
Daha sonra rattle'da iki veri kümesi üzerinde eğitilmiş modelin bir tahminini elde edebilirsiniz. ÜÇ tahmin karşılaştırılarak sonuçlar çıkarılabilir.
Bir kez daha, modelleri zaman serileri üzerinde eğitmek özel çaba gerektirir. Çıngırak kullanmak istiyorsanız, hedef değişken ve ilgili tahmin ediciler eğitim ve testte çubukların rastgele sıralanmasına izin vermelidir.
2. Bir konuda size katılıyorum: eğer girdi %100 çöp tahmincilerden oluşuyorsa, çıktıda da %100 çöp elde ederiz. Bu çok açık ve kimse buna itiraz etmiyor. Tek söylediğim, veriyi ayıklamanın önemli olmadığı algoritmalar olduğu, çünkü %100 dışında herhangi bir miktarda çöp veriyle Örneklem Dışı'nda iyi sonuçlar verdikleri, çünkü çöp verinin fiilen kullanılmadığı. Burada, temel bileşen analizi veya oto kodlayıcılar gibi veri boyutluluğunun azaltılmasının kritik olduğu algoritmalar ile veri boyutluluğuna karşı duyarsız olan algoritmalar arasında ayrım yapmak da önemlidir.
Öyle değiller. Randomforest, tahmin edicilerin anlamlılığını belirlemek için yerleşik bir algoritmaya sahiptir. Tahmin ediciler arasında saçmalıklar varsa bu algoritma tamamen işe yaramaz. Randomforest paketinin kendisi, gereksiz tahmincileri önceden elemek için ek bir işleve sahiptir, ancak rattle'da mevcut değildir.
"Borsada, ekonomik nedenler ve hareket yönü arasındaki ilişki üzerine araştırmalar yaygındır, ancak bunların hiçbiri gün içi aralıklar için geçerli değildir." - Evet geçerlidir ve Tarım Dışı İstihdamın açıklanması gibi gün içi aralıklar için de geçerlidir.
Bilmiyorum, bu kaynaktan haberim yok. Ama ekonomiyi iyi bilirim. Ve Gazprom'a ilişkin saatlik verilerin diğer şirketlere ilişkin herhangi bir ekonomik veriye bağlı olmadığını rahatlıkla söyleyebilirim. Ayın sonuçları hakkında soru yok.
3. Elbette sizi anlıyorum, herkes bildiği gibi kazanır, ancak hiç makine öğrenimi algoritmalarını kendiniz uyguladınız mı? Bir algoritmanın nasıl çalıştığını anlamak için onu sıfırdan kendiniz yazmanız gerektiğine inanıyorum. İnanın bana, bu durumda kitaplarda yazmayan şeyler keşfedeceksiniz. Ve daha önce kolay gibi görünen bariz unsurlar bile aslında düşündüğünüzden farklı çalışıyor:)
Merc yapmak başka bir şey, onları sürmek başka bir şey. Ben araba kullanmayı tercih ediyorum ama herkes kendi seçimini yapar.
NOT.
Sorduğunuz sorulara daha derinlemesine yanıtlar içeren bir kitap yazdım.
PSPS
Kişisel deneyimlerim, %70'e varan ana zamanın tahmin edicileri seçmek için harcandığını gösteriyor - sıkıcı ve yorucu bir iş. Kitabı satmak için bazı kolektifler oluştu - hiç kimse aşırı eğitilmiş modeller oluşturmayacak hızlı ve etkili tahminci seçimi yapmayı başaramıyor. Ve çoğu okuyucu zaten kitabın ötesine geçti ve bu iş için daha iyi araçlar kullanıyor.
Konuya gösterdiğiniz anlamlı ilgi için teşekkür ederim.
Detaylı cevabınız için teşekkür ederim.
Ancak sizden bazı yerleri açıklığa kavuşturmanızı rica ediyorum.
Öncelikle yukarıda tıbbi veriler üzerinde çalışan programımın örneğinin "açıklayıcı" olduğunu yazmış ve zaman serilerinin katı bir sıralamaya sahip olduğu gerçeğine atıfta bulunmuşsunuz.
"Tüm finansal seriler, değerlerin sırasının önemli olduğu sözde zaman serileridir."
Ve sonra kullandığınız Rastgele Orman'da şunu yazıyorsunuz:"Çubukların sırasına herhangi bir bağlılık söz konusu olamaz."
Ve şunu sormama izin verin: Algoritma başlangıçta rastgele alt uzay yöntemini kullanıyorsa ve bu zaman serilerini karıştırıyorsa, Rastgele Orman zaman serileri üzerinde nasıl çalışır?
"Bir kez daha, zaman serileri üzerinde model öğrenmek özel çaba gerektirir." - o zaman tekrar başa dönüyoruz. Peki, zaman serileri üzerinde çalışmasını sağlamak özel çaba gerektiriyorsa neden bu tür algoritmalar için zaman harcayalım? Bunu, bu tür çalışmaların teşvik edildiği üniversite araştırmaları bağlamında akademik bir bakış açısıyla değil, pratik bir bakış açısıyla konuşuyoruz.
"Gazprom hissiyatının diğer şirketlerle ilgili ekonomik verilerden bağımsız olduğunu rahatlıkla söyleyebilirim." - Bu, gün içi aralıklarla Gazprom hisselerinin Gazprom ve diğer şirketleri içeren RTS endeksinden hiçbir şekilde etkilenmediği anlamına mı geliyor?
"Bir Mercedes yapmak başka bir şey, onu kullanmak başka bir şey. Ben kullanmayı tercih ediyorum ama herkes kendi seçimini yapar. " - safsatada buna orijinal tezden sapma denir:) Ben algoritmalardan ve bunların hayata geçirilmesinden bahsediyordum ve siz fark edilmeden arabalar hakkında, başlangıçtaki tezle dıştan bağlantılı olan ancak onunla özdeş olmayan bir tez öne sürdünüz. Bence algoritmalar ve arabalar arasında "küçük" bir boşluk var. Bana aldırmayın, sadece bu tür tuhaflıkları fark etmeyi seviyorum:)
Özetlemek gerekirse: özellikle Rattle ve Random Forest hakkında yazdıklarınız büyük olasılıkla gerçekle ilgili ve bu konuda bilgilisiniz.
Ancak bir soru hala açık: Eşit kalitede iki algoritma seçeneğine sahip olan bir kişi (birincisi özel çaba ve beceriler olmadan zaman serileri üzerinde mükemmel bir şekilde çalışan ve ikincisi - onlarla birlikte) neden ikincisi lehine bir seçim yapmalıdır? Ve bu durumda optimal olacak mıdır?
Bu cümleyi geçemedim. Saygılar!
Ancak bir soru hala açık: eşdeğer sınıflandırma kalitesine sahip iki algoritma seçeneğine sahip olan bir kişi (birincisi özel çaba ve beceri gerektirmeden zaman serileri üzerinde mükemmel bir şekilde çalışan, ikincisi ise böyle çalışan) neden ikincisi lehine bir seçim yapmalıdır? Peki bu durumda optimal olacak mı?
Farklı araçlar farklı sorunları çözer ve bu da mevcut malzeme tarafından belirlenir.
Çıngırak, bir fikri hızlı bir şekilde test etmek için harika bir araçtır. Ancak onunla çalışan bir model oluşturmak oldukça zor olacaktır.
Rattle'da daha derine inebilir ve randomforest paketinin bir parçası olarak hazır erişimlerin bir günlüğünü çekebilirsiniz. Hedef değişkeniniz, örneğin trendlerden ziyade varlık artışlarını tahmin etmekse ve bunun için tahminciler bulmayı başardıysanız, randomforest çok yararlı olacaktır. Eğilimleri tahmin edecekseniz, örneği manuel olarak parçalara ayırmanız, sırayı korumanız gerekecektir, bu da rattle'da zordur (mümkün olsa da) ve doğrudan girdi örneği oluşturma algoritmasına herhangi bir kısıtlama getirmeyen randomforest paketinde çalışmanız gerekir. Test için oldukça kapsamlı bir örnek oluşturma araçları seti vardır. Bunlar ayrı paketlerdir.
Ve bu böyle devam eder. Genel sonuç, "optimal" bir araç olmadığıdır.
Paketlerin her biri, ham verilerdeki belirli sorunları çözen birçok inceliğe sahiptir. Genel olarak, süreç çok basit bile değildir.
NOT: GAZPROM HAKKINDA YAZDIĞIMDA Gazprom hakkında yazdığımda, kotasyonlar ve kar tipi değerler arasındaki ilişkiyi kastetmiştim. Ve endeks aritmetiktir, aynı Türkiye..... Ama bu farklı bir sorun... Makine öğreniminin borsada kullanımı forexe göre daha umut verici olsa da. Bana göründüğü gibi.
Farklı araçlar farklı sorunları çözer ve bu da mevcut malzeme tarafından belirlenir.
Çıngırak, bir fikri hızlı bir şekilde test etmek için harika bir araçtır. Ancak onunla çalışan bir model oluşturmak zordur.
Rattle'da daha derinlere inebilir ve randomforest paketinin bir parçası olarak hazır erişimlerin bir günlüğünü çekebilirsiniz. Hedef değişkeniniz, örneğin trendlerden ziyade varlık artışlarını tahmin etmekse ve bunun için tahmin ediciler seçmeyi başardıysanız, randomforest çok yararlı olacaktır. Eğilimleri tahmin edecekseniz, örneği manuel olarak parçalara ayırmanız, sırayı korumanız gerekecektir, bu da rattle'da zordur (mümkün olsa da) ve doğrudan girdi örneği oluşturma algoritmasına herhangi bir kısıtlama getirmeyen randomforest paketinde çalışmanız gerekir. Test için oldukça kapsamlı bir örnek oluşturma araçları seti vardır. Bunlar ayrı paketlerdir.
Ve bu böyle devam eder. Genel sonuç, "optimal" bir araç olmadığıdır.
Paketlerin her biri, ham verilerdeki belirli sorunları çözen birçok inceliğe sahiptir. Genel olarak, süreç çok basit bile değildir.
NOT: GAZPROM HAKKINDA YAZDIĞIMDA Gazprom hakkında yazdığımda, kotasyonlar ve kar tipi değerler arasındaki ilişkiyi kastetmiştim. Ve endeks aritmetiktir, aynı Türkiye..... Ama bu farklı bir sorun... Makine öğreniminin borsada kullanımı forex'e göre daha umut verici olsa da. Bana öyle geliyor.
İlginç bir makale, teşekkürler. R'yi ilk defa duydum, çok faydalı bir şeye benziyor. Uzun zamandır tarihsel verilere dayanarak ticaret yapabilen bir sinir ağı yapmak istiyorum, geçmişi mt5'ten (ohlc, spread, hacimler) boşaltmaya çalışacağım, rattle'a aktaracağım ve ne olacağını göreceğim.
Rattle'ın altı modeli var, bunlardan biri NS. NS'nin sonuçlarını rastgele ormanlar, ada ve SVM ile karşılaştırmanızı tavsiye ederim. Bence sonuçlar sizi çok şaşırtacak.
İlginç bir makale, teşekkürler. R'yi ilk defa duydum, çok faydalı bir şeye benziyor. Uzun zamandır tarihsel verilere dayanarak ticaret yapabilen bir sinir ağı yapmak istiyorum, geçmişi mt5'ten (ohlc, spread, hacimler) boşaltmaya çalışacağım, rattle'a aktaracağım ve ne olacağını göreceğim.
Çıngırak tam olarak bunun için tasarlanmamıştır. Doğrudan R'de çalışmanız gerekir. İşte böyle bir çözümün bir çeşidi https://www.mql5.com/tr/articles/1103.
İyi şanslar