Skip to content

Commit 3bffeed

Browse files
authored
Merge pull request #11 from scuervo91/fix_weiner_cash_sched
Fix weiner cash sched
2 parents 9f238da + 2bc7e1a commit 3bffeed

6 files changed

Lines changed: 635 additions & 23 deletions

File tree

dcapy/cashflow/cashflow.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -166,7 +166,7 @@ def get_value(self,i:int, seed:int=None, freq_output:str=None, ppf:float=None, i
166166
return self.value.get_sample(size=1, seed=seed, ppf=ppf)
167167
if isinstance(self.value,(Brownian,MeanReversion,GeometricBrownian)):
168168
df = self.value.generate(processes=i+1,freq_output=freq_output,interval=interval,seed=seed)
169-
idx = [i.to_timestamp().strftime('%Y-%m-%d') for i in df.index]
169+
idx = [i.to_timestamp().strftime('%Y-%m-%d') if ~isinstance(i,int) else i for i in df.index]
170170
return ChgPts(date=idx, value=df.iloc[:,i].values.tolist())
171171

172172
def get_wi(self,i:int, seed:int=None, freq_output:str=None, interval:float=None, ppf=None):

dcapy/schedule/schedule.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -345,7 +345,7 @@ def generate_cashflow(self, freq_output=None, add_name=None, seed=None, ppf=None
345345
else:
346346
cashflow_dict.update({
347347
'chgpts':{
348-
'date':_array_values.index.strftime('%Y-%m-%d').tolist() if is_date_mode else _array_values.index,
348+
'date':_array_values.index.strftime('%Y-%m-%d').tolist() if is_date_mode else _array_values.index.values.tolist(),
349349
'value':_array_values.tolist()
350350
}
351351
})
@@ -375,7 +375,6 @@ def generate_cashflow(self, freq_output=None, add_name=None, seed=None, ppf=None
375375
for key in cashflow_model_dict:
376376
if len(cashflow_model_dict[key]) == 0:
377377
del cashflow_model_dict[key]
378-
379378
cashflow_model = CashFlowModel(**cashflow_model_dict)
380379
list_cashflow_model.append(cashflow_model)
381380

docs/examples/6-FixesNotebooks/0-1-7_test_release.ipynb

Lines changed: 626 additions & 17 deletions
Large diffs are not rendered by default.

docs/release_notes.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
# Release Notes
22

3+
## 0.1.8
4+
### Fixes
5+
* 👷 Fix Weiner Proccesses index when using with Schedule module
6+
37
## 0.1.7
48
### Fixes
59
* 👷 Fix Broadcast shapes when provide multiple cashflow iteration and only one forecast

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[tool.poetry]
22
name = "dcapy"
3-
version = "0.1.7"
3+
version = "0.1.8"
44
description = "Oil and Gas DCA Workflows"
55
authors = ["Santiago Cuervo"]
66
license = "MIT"

test/test_schedule.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -375,7 +375,7 @@ def test_group_wells(self):
375375
r = np.array([-9.65263710e+06, 2.09036981e+07, 4.34884735e+07, 7.09743677e+07,
376376
8.67308430e+07, 9.95260309e+07, 1.05163157e+08, 1.08640398e+08,
377377
1.13126400e+08, 1.12473869e+08])
378-
379-
assert_frame_equal(pd.DataFrame(cwn[0].fcf()['cum_fcf'].values), pd.DataFrame(r))
378+
print(cwn[0].fcf(freq_output='A')['cum_fcf'].values)
379+
assert_frame_equal(pd.DataFrame(cwn[0].fcf(freq_output='A')['cum_fcf'].values), pd.DataFrame(r))
380380

381381

0 commit comments

Comments
 (0)