Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.01.2010, 00:52   #1
Aleksa Guan
 
Регистрация: 05.01.2010
Сообщений: 3
По умолчанию Фин. рез по сделкам

Здравствуйте Уважаемые программисты,
С прошедшими праздниками

У меня возникла проблема с обработкой отчета брокера, необходимо считать результат каждой сделки, в том понимании как считает начальница. Я хоть в институте в основном пары по информатике проболтала, но сейчас наверстываю упущенное всеми силами.
Итак проблема есть отчет брокера по сделкам, я его как смогла через бесплатный конвертер перегнала в ёксель, как говорит наш программер )), хороший дядя, но к сожалению к нему не обратиться, начальница сожрет и уволит, как никчемную(

Ключевые поля там номер заявки, сделки (на основании заявки ), дата, время, кол-во лотов куплено, кол-во лотов продано, и цена. Цель посчитать промежуточные результаты по сделкам, вроде все просто, а на самом деле черт ногу сломит.
Проблема в том, что на биржи своя специфика, если я продала фьючерс (играю на понижение,шорт), то мне надо откупить его дешевле чтобы была прибыль, если купила, то наоборот, продать дороже. Загвоздка в том, что если все продажи сделать с минусом а покупки с плюсом получается билиберда, чтобы было понятно объясню напримере, я продала за 70, а откупила потом за 100 , если продажи с минусом, а покупки с плюсом, то в таком случае у нас получиться + 30, а эта ошибка, ведь я продала дешевле чем потом откупила назад, потеряв 30.

Я сейчас выложу пробный файл, я там начала в ручную делать, но т.к. там в общем объемы около 4 гигов такой инфы обработать, я или добью, дай бог с Вашей помощью, или пойду в секретарши (((

Что я уже сделала, графу М с результатом сделок, если продажа отриц, покупка положит. Несколько примеров расчета я сделала вручную, выделила красным результаты. Как я думаю нужен некий макрос, который будет счетчиком считать солько лотов куплено, сколько продано, и когда они перекроются, тоесть 5 купили, 5 продали, - сальдо 0, смотреть как началась сделка, - продажей или покупкой и в соотвествии с этим считать фин. рез сделки, по определенному алгоритму.


Надеюсь на Вашу помощь,

Саша
Вложения
Тип файла: rar _month_rus_F1.rar (55.6 Кб, 13 просмотров)
Aleksa Guan вне форума Ответить с цитированием
Старый 05.01.2010, 01:22   #2
doober
Старожил
 
Аватар для doober
 
Регистрация: 02.05.2009
Сообщений: 3,907
По умолчанию

У меня вопрос Отчет брокера в каком формате(до конвертации),какой вес у него в метрах
Анализ,обработка данных Недорого
doober вне форума Ответить с цитированием
Старый 05.01.2010, 01:53   #3
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

а где связь между сделками?
как знать что сделка ХХХХ по продаже чего-то связана с предварительной сделкой УУУУ по его покупке.
Я так понимаю, чтобы продать чего-нибудь ненужное, надо сначала купить чего-нибудь ненужное.
В файле есть дата, время, цена, непонятные значения в полях куплен продан, и совершенно не понятно что куплено (продано) и сколько штут.
Если куплено чего-то 100 штук по 20, а потом продано 90 штук по 22 финансовые результаты такой сделки = 90*22 - 100*20 = -20, но в потенциале еще есть 10 единиц чего-то, что стоит каких-то денег и все не так плохо...

на мой взгляд - данных недостаточно, возможно прийдется секретарствовать...
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 05.01.2010, 02:13   #4
doober
Старожил
 
Аватар для doober
 
Регистрация: 02.05.2009
Сообщений: 3,907
По умолчанию

Там вообще Атас,счет прекращается,когда количество в графе продаж
сравнится с количеством покупок.
Когда продадут 3 апельсина и купят 3 банана,идет подсчет .
Поддержую тебя Игорь
Анализ,обработка данных Недорого
doober вне форума Ответить с цитированием
Старый 05.01.2010, 05:33   #5
Aleksa Guan
 
Регистрация: 05.01.2010
Сообщений: 3
По умолчанию

Спасибо, за внимание,
в Формате pdf мегабайт на 20, но на каждый фьючерс,- отдельный отчет такой же, а их там много.
Попробую обьяснить, в этом отчете идут сделки только по фьючерсу на индекс РТС, это один финансовый инструмент. Есть такое понятие шорт, необеспеченная продажа, когда я у брокера беру в долг бумагу, продаю ее за 100 руб, цена падает до 80, я ее покупаю, отдаю брокеру, а 20 руб. себе в карман кладу, вот в таких операциях, когда идет игра на понижение, вся загвоздка.
IgorGO, тоесть тут не надо чем то владеть чтобы продать, достаточно иметь деньги на счету, в таком случае, при продаже, у вас в активе будет минус 1 фьючерс, а на счету часть средств будет заблокирована брокером. http://ru.wikipedia.org/wiki/%D0%9A%...B0%D0%B6%D0%B0
Ссылка на Вики.
А в файле обьем в лотах купля или продажа, это один и тот же фьючерс, в поле цена это его котировка на данный момент на биржи, следующий столб Итого сумма, это уже я посчитала кол-во лотов * цену, если продажа = отрицательные значения, покупка соотвественно пол.

Как пример опишу первую сделку, продала сначала 1, а потом еще 5 фьючей по 129710, (заявка 845836403), потом купила 1, еще 1, еще 4 по 129890 (заявка 845851823 ). В итоге откупила дороже чем продала, поэтому результат минус 1080 рубл. Рассчитывала что цена наоборот будет падать, что смогу откупить дешевле, вернуть брокеру, а дельту в карман положить.
На каждую заявку генерятся одна или более сделок. Может в этом ключик, я уже вторую ночь ломаюсь...
Aleksa Guan вне форума Ответить с цитированием
Старый 05.01.2010, 16:12   #6
doober
Старожил
 
Аватар для doober
 
Регистрация: 02.05.2009
Сообщений: 3,907
По умолчанию

Я думаю,этот макрос Вам немного поможет

Код:

Sub W_Karman()

Dim m As Integer
Dim debet As Double
debet = 0
For n = 4 To Range("L" & Rows.Count).End(xlUp).Row
debet = debet + Cells(n, 13)
On Error Resume Next
k = k + CInt(Cells(n, 9))
f = f + CInt(Cells(n, 10))
If Cells(n, 9).Text = "" And Cells(n, 10).Text = "" Then
Exit For
Else
m = f + k
If m = 0 Then
Cells(n, 14).Interior.ColorIndex = 3
k = 0: f = 0: Cells(n, 14) = -debet: debet = 0
End If
End If
Next

End Sub
Анализ,обработка данных Недорого
doober вне форума Ответить с цитированием
Старый 05.01.2010, 16:30   #7
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

Цитата:
тоесть тут не надо чем то владеть чтобы продать, достаточно иметь деньги на счету
темные мы... грамоте не обучены, как с фьючерсами управляться - понятия не имеем, хорошо хоть развиваемся за счет умных людей...
Написал вам формулу.
Она в 14-й колонке. Тащите ее вниз по листу, наслаждайтесь результатами...
Обращаю ваше внимание, для первой сделки формула написана чуть длинее, зато она не так жестко привязана к положению на листе и не использует поименованную формулу "ПослРяд", которую надо переносить вместе з данными.
Успехов!
Вложения
Тип файла: rar Книга245.rar (41.4 Кб, 20 просмотров)
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 05.01.2010, 16:36   #8
doober
Старожил
 
Аватар для doober
 
Регистрация: 02.05.2009
Сообщений: 3,907
По умолчанию

Сам спаржу и маржу путаю
Анализ,обработка данных Недорого
doober вне форума Ответить с цитированием
Старый 05.01.2010, 20:16   #9
Aleksa Guan
 
Регистрация: 05.01.2010
Сообщений: 3
По умолчанию

Огромное спасибо, Вы мне оказали неоценимую помощь, удачи !!!
Aleksa Guan вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проект!VBA(Excel+Access)-анализ фин.сост-ия пр-ия!Срочно!!! s_k Фриланс 5 17.12.2009 20:17