2014-02-13 35 views
0

因此,我有一個帶有排序交易數據的CSV文件。 它具有以下欄目:使用Pandas在Python中匹配CSV文件中的交易

Trade_Price , TimeStamp , Buy/Sell , Contract 

現在我已經整理了交易,使他們在CSV連續行。現在我想通過考慮Trade_Price的差異找到淨PnL,並將其放入Python中的新數據框中。我不確定如何循環訪問Dataframe以匹配這些交易,然後將它們存儲在具有以下列的新數據框中。

Contract , Price_Change ,   PnL ,  Trade_Number 

Price_Change = Trade_price(1) - Trade_price(2) 

損益會,如果我在100買的,並在101賣出,然後我的損益爲$ 1 I假設交易單位爲1

+0

如果您解析純文本文件和groubpy合同最佳。然後遍歷組...什麼是Trade_Number?它在這裏出現在空氣中... – tschm

+0

它只是我補充說明貿易的另一列。它保持交易數量的計數。 – finviz

+0

所以我已經通過合同對它進行了分組,但是我不確定我可以如何迭代它並一次抓兩行?一旦完成就移到第三行而不是第二行。 – finviz

回答

0

兩個搶在同一時間,你可以做這樣的事情的兩列:

import pandas as pd 

Trade_Price = pd.DataFrame({'A':[1,2,3,4],'B':[5,6,7,8]}) 
Trade_Price1 = Trade_Price.iloc[::2,:].reset_index(drop=True) 
Trade_Price2 = Trade_Price.iloc[1::2,:].reset_index(drop=True) 
print Trade_Price1 
print Trade_Price2 
print Trade_Price1-Trade_Price2 #do your operations here 

輸出:

A B 
0 1 5 
1 3 7 
    A B 
0 2 6 
1 4 8 
    A B 
0 -1 -1 
1 -1 -1 
相關問題