Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Baza danych do analizy technicznej, Jak najlepiej?
Blackhole
post 22.10.2007, 14:40:41
Post #1





Grupa: Zarejestrowani
Postów: 283
Pomógł: 1
Dołączył: 15.11.2004
Skąd: Mikołów

Ostrzeżenie: (0%)
-----


Cześć.

Planuję przechowywać w bazie kursy akcji spółek notowanych na WGPW. Wydaje mi się, iż do tego najlepsza będzie jedna tabela o strukturze:
Kod
create table notowania (
id number,
spolka char(4), -- kod społki
data date,
otwarcie number,
minimum number,
maksimum number,
zamkniecie number,
wolumen pls_integer,
primary key (id),
constraint unikatowosc unique (spolka, data)
);
(nie wiem, czy składnie napisałem poprawnie, ale pewnie wiecie, o co chodzi).
Potem przy wykorzystaniu danych w tej tabeli chciałbym obliczać różne wskaźniki analizy technicznej i każdy przechowywać w oddzielnej tabeli. Uzyskane dane służyć mi mają (w zamierzeniu) do łatwego generowania wykresów.
Co o tym sądzicie? Może macie jakiś lepszy pomysł?

Ten post edytował Blackhole 22.10.2007, 14:41:12


--------------------
Ściskam prawicę...
Jacek

http://doscniewoli.pl/ - wszyscy jesteśmy niewolnikami bankierów!
http://jezusimarlena.ovh.org/
YouTube - Egzorcyzmy Anneliese Michel
Go to the top of the page
+Quote Post
najtje
post 22.10.2007, 15:34:46
Post #2





Grupa: Zarejestrowani
Postów: 48
Pomógł: 0
Dołączył: 4.10.2007

Ostrzeżenie: (0%)
-----


no może nałóż unikata na id zamiast na spółkę
i może zamiast 3 kolumn (otwarcie, zamknięcie, minimum) wprowadź po prostu timestampa
otwarcie to będzie wtedy minimalny timestamp pogrupowany po danej dacie, zamknięcie maksymalny (zamknięcie) - napiszesz po prostu widok który ci przedstawi tabele w formie takiej jak przedstawiłeś.
A jak będziesz chciał wprowadzić wszystkie dane (z całego dnia notowań) automatycznie będziesz to mógł zrobić.
W przypadku gdybyś się zdecydował na pobieranie danych notowań ciągłych nie wiem czy kilka transakcji które są dokonywane nie mają takiego samego timestampu bo dane są dostępne chyba tylko co do sekundy. Można by potraktować te transakcje jako jedną ale ilość transakcji nie wiem... to też w tym momencie jest informacja warta odnotowania tzn. napewno nie warto jej tracić smile.gif Wtedy musiałbyś wprowadzić jakąś numerację takich transakcji mających ten sam timestamp i rozszerzyć unikalny klucz.
W sumie notowania są w formie metastocka najczęściej - rozejrzałbym się za jakimś narzędziem które umożliwiłoby wrzucenie danych z tego programu do bazy lub arkusza i potem do bazy. Wtedy miałbyś już nawet relacje potworzone i pewnie dobrze zaprojektowane.

Ten post edytował najtje 22.10.2007, 15:36:40
Go to the top of the page
+Quote Post
Blackhole
post 22.10.2007, 17:51:49
Post #3





Grupa: Zarejestrowani
Postów: 283
Pomógł: 1
Dołączył: 15.11.2004
Skąd: Mikołów

Ostrzeżenie: (0%)
-----


Zakładałem, że będę miał jedynie informację o cenie otwarcia, zamknięcia, minimalnej i maksymalnej z danej sesji. Notowań ciągłych myślę, że nie warto mi zbierać. Przybyłoby po prostu dużo danych w bazie, a nie wydaje mi się, by były mi do czegoś potrzebne. Z tym 4-ech cen tworzy się przecież wszystkie wykresy i wskaźniki.

A czy to, by trzymać obliczone wskaźniki w innej tabeli (oddzielnej dla każdego wskaźnika), a w tabeli z notowaniami mieć FK do tych tabel jest dobrym rozwiązaniem?
Mając już te dane w bazie, będę chciał się do niej odwoływać z poziomu C++ wykorzystując bibliotekę OCL.

Hmm... Za OCL trzeba zapłacić jakieś ponad $150 sad.gif Znacie jakąś inną bibliotekę umożliwiającą połączenie się z C++ do Oracle?

Ten post edytował Blackhole 22.10.2007, 18:09:00


--------------------
Ściskam prawicę...
Jacek

http://doscniewoli.pl/ - wszyscy jesteśmy niewolnikami bankierów!
http://jezusimarlena.ovh.org/
YouTube - Egzorcyzmy Anneliese Michel
Go to the top of the page
+Quote Post
najtje
post 23.10.2007, 07:29:55
Post #4





Grupa: Zarejestrowani
Postów: 48
Pomógł: 0
Dołączył: 4.10.2007

Ostrzeżenie: (0%)
-----


Cytat
Z tym 4-ech cen tworzy się przecież wszystkie wykresy i wskaźniki.


Przecież wskaźniki można obliczać z dowolnie przyjętym interwałem czasowym.
Go to the top of the page
+Quote Post
Blackhole
post 23.10.2007, 07:45:42
Post #5





Grupa: Zarejestrowani
Postów: 283
Pomógł: 1
Dołączył: 15.11.2004
Skąd: Mikołów

Ostrzeżenie: (0%)
-----


Ale chyba nie mają większego zastosowania wskaźniki, których interwał wynosi np. 15 minut lub 1h? Najmniejszy interwał to chyba 1 dzień (myślę).

P.s. Znasz jakąś inną bibliotekę do połączenia się z C++ do Oracle 10g?

Ten post edytował Blackhole 23.10.2007, 07:48:48


--------------------
Ściskam prawicę...
Jacek

http://doscniewoli.pl/ - wszyscy jesteśmy niewolnikami bankierów!
http://jezusimarlena.ovh.org/
YouTube - Egzorcyzmy Anneliese Michel
Go to the top of the page
+Quote Post
SongoQ
post 23.10.2007, 07:58:03
Post #6





Grupa: Przyjaciele php.pl
Postów: 2 923
Pomógł: 9
Dołączył: 25.10.2004
Skąd: Rzeszów - studia / Warszawa - praca

Ostrzeżenie: (0%)
-----


http://www.oracle.com/technology/sample_co...occi/index.html


--------------------
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 6.07.2025 - 06:46