Предлагаемая схема для хранения цен на акции - PullRequest
1 голос
/ 05 сентября 2011

Я исчерпал свое гугл-фу и не могу получить ничего похожего на ответ, поэтому я решил спросить здесь.

[фон] Я управляю форумом, посвященным американской игре в футбол (BloodBowl). У каждого участника своя команда, а у нас лиги и кубки. Я подумал, что было бы интересно написать некоторые функции «акции и акции» для сайта, чтобы каждый участник мог инвестировать в другие команды. Цены будут обновляться после каждой игры (~ 100 игр в неделю), но фактическое обновление будет асинхронным (у меня есть текущий код запуска в нужное время, поэтому его можно изменить, чтобы включить то, что нужно. [/ Фон]

По сути, мне нужно записывать цены, которые каждая команда (актив) имеет при каждом изменении, обновляется асинхронно, но только один раз в неделю. С 200 командами и 12 неделями в сезон я бы посмотрел на 2400 записей за сезон (и это будет бесконечность, хотя недели - это недели из реальной жизни, поэтому не слишком большой).

Я думаю об одной таблице, например:

[teamID] Int [price] Int [date] Date [dividend] Int [gain] Int [gain%] float(2dp) [comment] Text

Какая строка (и) должна быть моим первичным ключом?

Я слишком обдумываю это? Должен ли я просто кодировать это? Меня беспокоит то, что я хочу иметь возможность получать исторические данные, например, для графиков и тому подобного, хотя я бы очень регулярно посещал эту таблицу, поскольку игроки торгуют акциями. Я не хочу его кодировать, а потом пойму, что мне не хватает некоторого поля, которое сделало бы все мои запросы более эффективными.

Полагаю, я действительно ищу схему, используемую некоторыми БД, которая на самом деле использует ее для акций в реальной жизни, просто чтобы смоделировать ее аналогичным образом.

Спасибо, что читаете, и я надеюсь, что кто-то здесь что-то внесёт.

С уважением, Dan

1 Ответ

1 голос
/ 05 сентября 2011

Вы смотрели какие-нибудь онлайн-трекеры портфолио?

У меня есть следующие столбцы:

Name▲▼ Symbol▲▼ Last price▲▼ Change▲▼ Shares▲▼ Cost basis▲▼ Mkt value▲▼ Gain▲▼ Gain %▲▼ Day's gain▲▼ Overall return 

Надеюсь, это поможет некоторым ...

...