tarf_monte_carlo 3.57 → 3.58
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/ext/tarf_monte_carlo/tarf_monte_carlo.c +12 -0
- data/lib/tarf_monte_carlo/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 393bd0b02941349be6693349a14b57a276a0dd46de997ce6bf467556a0ddeb4b
|
4
|
+
data.tar.gz: 98742767158d8b544991ce09bc8a532e8e3a67430ee71fda21de47cc49af400c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 983d134a318259bce1eb74760cb481c0cb185f341927900907b7df581ea2b1dbd8d5c05304833d1e38e6fa93b3d056eb4de58e42bf542b5c55537452869aa7a2
|
7
|
+
data.tar.gz: dad8cb62f6b347d2f3719009c7393a30245a24b33cfb85c941467d86215b62334cd505da1f3ca0588422cc700184ac48eb327cf4b409e2d9bbfbd9708a9fe08f
|
@@ -502,6 +502,12 @@ VALUE method_run_monte_carlo( VALUE self, VALUE args ) {
|
|
502
502
|
sim_dash_pos[legIndex_dash] = get_equivalent_rebate(rebate_conversion_sign, ( *( Rebate_array + 0 ) ), sim_dash[legIndex_dash], dir_sign);
|
503
503
|
}
|
504
504
|
}
|
505
|
+
if ((point_pos < DATAPOINTS) && (sim_count % INTERVAL) == 0){
|
506
|
+
metrics[0][point_pos] = sim[NL-1];
|
507
|
+
metrics[1][point_pos] = *( Xs_array + 0 );
|
508
|
+
metrics[0][point_pos+1] = sim_dash[NL-1];
|
509
|
+
metrics[1][point_pos+1] = *( Xs_array + 0 );
|
510
|
+
}
|
505
511
|
} else if(KType == FX_AMERICAN_BARRIER_BINARY_OUT_DISCRETE || KType == FX_AMERICAN_BARRIER_BINARY_CALLPUT_OUT_DISCRETE){
|
506
512
|
if(knockedLeg == -1){
|
507
513
|
int itm = true;
|
@@ -528,6 +534,12 @@ VALUE method_run_monte_carlo( VALUE self, VALUE args ) {
|
|
528
534
|
sim_dash_pos[NL - 1] = get_equivalent_rebate(rebate_conversion_sign, ( *( Rebate_array + 0 ) ), sim_dash[NL - 1], dir_sign);
|
529
535
|
}
|
530
536
|
}
|
537
|
+
if ((point_pos < DATAPOINTS) && (sim_count % INTERVAL) == 0){
|
538
|
+
metrics[0][point_pos] = sim[NL-1];
|
539
|
+
metrics[1][point_pos] = *( Xs_array + 0 );
|
540
|
+
metrics[0][point_pos+1] = sim_dash[NL-1];
|
541
|
+
metrics[1][point_pos+1] = *( Xs_array + 0 );
|
542
|
+
}
|
531
543
|
} else if(KType == FX_AMERICAN_BARRIER_KIKO_UNTIL_EXP){
|
532
544
|
if(knockedLeg2 >= 0){
|
533
545
|
sim_pos[NL-1] = get_equivalent_rebate(rebate_conversion_sign, ( *( Rebate_array + 0 ) ), sim[NL-1], dir_sign);
|