Ticarette makine öğrenimi: teori, pratik, ticaret ve daha fazlası - sayfa 25

 
San Sanych Fomenko :
R'deki "nesne", birçok programlama dilinden çok daha karmaşıktır.
Evet, nesneler farklı değildir, sadece str, plot, özet ve benzerleri birçok kez aşırı yüklenmiştir, her türün kendi uygulaması vardır.
 
Alexey Burnakov :
Neden bu kadar uzun sürdüğünü tam olarak anlamıyorum. optim_var_number ne kadar aldı? 10 içinde olmalıdır. 1200 saniyeye ayarlayın ve bir şey olmalıdır.

Çok fazla tahmincim var (9602), bu yüzden bu kadar uzun sürüyor. 2015 için eurusd d1'den alınmıştır, her türlü fiyat, zaman ve gösterge vardır. Henüz d1'den çıkmadım, bu nedenle eğitim örneklerinin sayısı bir yıldaki işlem günü sayısına göre sadece 250+. Geçiş yok.

optim_var_number = 0.8662363

Dosyalar:
trainData.zip  14378 kb
 
Dr.Tüccar :

Çok fazla tahmincim var (9602), bu yüzden bu kadar uzun sürüyor. 2015 için eurusd d1'den alınmıştır, her türlü fiyat, zaman ve gösterge vardır. Henüz d1'den çıkmadım, bu nedenle eğitim örneklerinin sayısı bir yıldaki işlem günü sayısına göre sadece 250+. Geçiş yok.

optim_var_number = 0.8662363

Setinle oynayacağım. Her şey uçmalı.
 
San Sanych Fomenko :

İkincisi için, 1. sütun, sadece PC1 alırsak 0.9761 değişkenliğinin (Kümülatif Oran) açıklanacağını, İKİ bileşen alırsak - PC1 ve PC2, o zaman 0.99996 açıklanacağını söylüyor, vb.

PC1 PC2 PC3 PC4 PC5

Standart sapma 2.2092 0.34555 0.01057 0.008382 0.004236

Varyans Oranı 0.9761 0.02388 0.00002 0.000010 0.000000

Kümülatif Oran 0.9761 0.99996 0.99998 1.000000 1.000000

Her şeyin biraz kötü olduğu ortaya çıktı - bu yöntem yalnızca olası tüm bileşenlerle çalışırsanız çalışır. prcomp işlevi, varsayılan olarak NULL olan bir "tol" parametresine sahiptir. Ancak bulunan bileşenlerin sayısını azaltmak için 0'dan 1'e kadar herhangi bir değer atanabilir. Şu şekilde çalışır - yeni bir bileşen ararken, işlev ilk bileşenin sdev'ini alır, tol ile çarpar. Yeni bir bileşenin geliştirmesi bu ürünün altına düşer düşmez, yeni bileşenlerin oluşturulması durdurulacaktır. Örneğin, sizin durumunuzda, tol = 0,1 ise, sdev <0,22 olan tüm bileşenler otomatik olarak atılır, yani yalnızca iki ana bileşen kalır. tol=0,003 ise, yalnızca sdev > 0,0066276 olan bileşenler, yani yalnızca dört kalır. tol=NULL (varsayılan) ile, işlev maksimum sayıda bileşen üretecektir, ancak bu benim çok zamanımı alıyor, bu yüzden bu süreci kısaltmak istiyorum. Tol kullanırsanız, her şey daha hızlı çalışır, bileşen daha küçüktür, ancak bu durumda kümülatif oran bozulur. Bir şekilde sadece bulunan bileşenlere göre hesaplanır. Son bulunan bileşenin Kümülatif Oranı her zaman 1 olacaktır. Tol sayesinde bin yerine sadece 2 bileşen bulunsa bile, ikinci bileşenin kümülatif oranı 1'e değişecektir (örneğin, tüm bileşenler oluşturulmuşsa 0,1'den). ) ve buna bağlı olarak PC1 için de artacaktır. Tahmin edicileri filtrelerken Kümülatif Oranın da bir şekilde yanlış değişmesi mümkündür.

Genel olarak, Kümülatif Orana güvenilmez, eğer y-aware pca ile ciddi bir şekilde çalışıyorsanız, o zaman açıklanan değişkenliği hesaplamak için kendi fonksiyonunuzu yazmanız gerekir.

 
Dr.Tüccar :

Her şeyin biraz kötü olduğu ortaya çıktı - bu yöntem yalnızca olası tüm bileşenlerle çalışırsanız çalışır. prcomp işlevi, varsayılan olarak NULL olan bir "tol" parametresine sahiptir. Ancak bulunan bileşenlerin sayısını azaltmak için 0'dan 1'e kadar herhangi bir değer atanabilir. Şu şekilde çalışır - yeni bir bileşen ararken, işlev ilk bileşenin sdev'ini alır, tol ile çarpar. Yeni bir bileşenin sdv'si bu ürünün altına düşer düşmez, yeni bileşenlerin oluşturulması duracaktır. Örneğin, sizin durumunuzda, tol = 0,1 ise, sdev <0,22 olan tüm bileşenler otomatik olarak atılır, yani yalnızca iki ana bileşen kalır. tol=0,003 ise, yalnızca sdev > 0,0066276 olan bileşenler kalır, yani yalnızca dört. tol=NULL (varsayılan) ile, işlev maksimum sayıda bileşen üretecektir, ancak bu benim çok zamanımı alıyor, bu yüzden bu süreci kısaltmak istiyorum. Tol kullanırsanız, her şey daha hızlı çalışır, bileşen daha küçüktür, ancak bu durumda kümülatif oran bozulur. Bir şekilde sadece bulunan bileşenlere göre hesaplanır. Son bulunan bileşenin Kümülatif Oranı her zaman 1 olacaktır. Tol sayesinde bin yerine sadece 2 bileşen bulunsa bile, ikinci bileşenin kümülatif oranı 1'e değişecektir (örneğin, tüm bileşenler oluşturulmuşsa 0,1'den). ) ve buna bağlı olarak PC1 için de artacaktır. Tahmin edicileri filtrelerken Kümülatif Oranın da bir şekilde yanlış değişmesi mümkündür.

Genel olarak, Kümülatif Orana güvenilmez, eğer y-aware pca ile ciddi bir şekilde çalışıyorsanız, o zaman açıklanan değişkenliği hesaplamak için kendi fonksiyonunuzu yazmanız gerekir.

Fikir ilginç, boşuna değil, bakman için seni kışkırttım.
 
Dr.Tüccar :

Çok fazla tahmincim var (9602), bu yüzden bu kadar uzun sürüyor. 2015 için eurusd d1'den alınmıştır, her türlü fiyat, zaman ve gösterge vardır. Henüz d1'den çıkmadım, bu nedenle eğitim örneklerinin sayısı bir yıldaki işlem günü sayısına göre sadece 250+. Geçiş yok.

optim_var_number = 0.8662363

Setinize baktım. Ya da ben bir şey anlamıyorum mesela tüm değişkenler girdiye gitmiyor ya da çok yanılıyorsunuz. Çok fazla ham fiyat değeriniz var, örneğin 1.1354 (MA ve diğerleri). Bu tamamen durağan olmayan veriler olduğu için hiçbir şekilde yapılamaz. Tüm veriler FARKLILIKLAR veya salınan göstergeler olmalı ve tamamen durağan olmalıdır. Bu tür verilerde bağımlılıkları bulmak tamamen anlamsız bir iştir.
 

Aynen, unutmuşum, verilerin özel olarak hazırlanması gerektiğini söylemişsiniz zaten. Ham verileri aldım. Göstergeler arasında osilatörler de var, sadece onları almaya çalışacağım.

Bu arada, PCA modeli bu tür verilerle çalışır, ancak orijinal verilerle çok fazla merkezlemeye, ölçeklemeye ve bir tür döndürmeye ihtiyaç duyar. Daha basit bir nöron için, yalnızca [0..1]'de veri normalizasyonuna ihtiyaç duyar.

 
Dr.Tüccar :

Aynen, unutmuşum, verilerin özel olarak hazırlanması gerektiğini söylemişsiniz zaten. Ham verileri aldım. Göstergeler arasında osilatörler de var, sadece onları almaya çalışacağım.

Bu arada, PCA modeli bu tür verilerle çalışır, ancak orijinal verilerle çok fazla merkezlemeye, ölçeklemeye ve bir tür döndürmeye ihtiyaç duyar. Daha basit bir nöron için, yalnızca [0..1]'de veri normalizasyonuna ihtiyaç duyar.

Hayır, durağan olmamanın önemini kesinlikle tam olarak anlamıyorsunuz. Bir sinir ağı veya doğrusal bir model veya benim modelim olması fark etmez, verileriniz durağan değilse, bunlar üzerinde bulunan bağımlılıkların örnek dışında oluşmaması garanti edilir. Formda sahip olduğunuz tüm veriler: ham fiyat, MA (ham fiyat), bar açılışı (ham fiyat), vb. modelden çıkarılmalıdır. Farklarını bilinen son fiyattan almanız gerekir.

Burada aralığa ölçekleme mümkün değildir.

 
Alexey Burnakov :

verileriniz durağan değilse, bunlar üzerinde bulunan bağımlılıkların numunenin dışında oluşmaması garanti edilir.

Bu tür verilerin çoğaltılmasının yeterliliği konusunda şüphe uyandıran tek bir ilginç nüans vardır (önceki değerden farklılıklar)

1) Örneğin bir fiyatımız varsa,

2) farkını biz yaratırız

3) Yapı olarak birbirine çok yakın iki farklı alan alıyoruz (Öklid'e göre bile)

4) yani, bu alanlar RF veya aynı nöronda neredeyse %100 tek bir kümeye düşecek ve özdeş durumlar olarak kabul edilecektir.

5) sonra bu iki bölümü (farkları) alıp tekrar başlangıç fiyatlarına, yani kümülatif toplamına geri yükleriz.

Ve bu bölümlerin tamamen farklı olduğunu görüyoruz, genellikle bir bölümde yukarı yönlü bir eğilim var ve diğerinde aşağı yönlü bir eğilim var, yani benzerlik yok ve algoritma daha sonra bunların özdeş bölümler olduğunu düşünüyor..

Bu Alex hakkında ne düşünüyorsun? tecrübeli biri olarak yorumunuz ilginç

 
mytarmailS :

Bu tür verilerin çoğaltılmasının yeterliliği konusunda şüphe uyandıran tek bir ilginç nüans vardır (önceki değerden farklılıklar)

1) Örneğin bir fiyatımız varsa,

2) farkını biz yaratırız

3) Yapı olarak birbirine çok yakın iki farklı alan alıyoruz (Öklid'e göre bile)

4) yani, bu alanlar RF veya aynı nöronda neredeyse %100 tek bir kümeye düşecek ve özdeş durumlar olarak kabul edilecektir.

5) sonra bu iki bölümü (farkları) alıp tekrar başlangıç fiyatlarına, yani kümülatif toplamına geri yükleriz.

Ve bu bölümlerin tamamen farklı olduğunu görüyoruz, genellikle bir bölümde yukarı yönlü bir eğilim var ve diğerinde aşağı yönlü bir eğilim var, yani benzerlik yok ve algoritma daha sonra bunların özdeş bölümler olduğunu düşünüyor..

Bu Alex hakkında ne düşünüyorsun? tecrübeli biri olarak yorumunuz ilginç

Neden böyle olacak? Farklar çakışırsa, integral serisi tamamen çakışacaktır. Sadece benzerlerse, integral seriler benzer olacaktır (eğilimde).

Tüccar'a veri hazırlamanın temellerini okumasını söylemek istedim. Hiç kimse ham giriş fiyatları sunmuyor. Zaten yüz bin kez oynandı. Durağan olmayan veriler, durağan olmayan bağımlılıklara yol açar.

Neden: