Skip to content

Commit

Permalink
Merge branch 'master' of https://github.com/juxeii/JForexUtils
Browse files Browse the repository at this point in the history
Conflicts:
	gradle/wrapper/gradle-wrapper.jar
	gradle/wrapper/gradle-wrapper.properties
	gradlew
  • Loading branch information
reiss authored and reiss committed Nov 13, 2017
2 parents c27660b + 083e777 commit 7410107
Show file tree
Hide file tree
Showing 3 changed files with 19 additions and 90 deletions.
84 changes: 0 additions & 84 deletions gradlew.bat

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -48,12 +48,16 @@ public ICurrency crossCurrency() {

public FxRate rate(final FxRate rateA,
final FxRate rateB) {
final BigDecimal bdcFirst = rateA.instrument().equals(firstInstrument)
? BigDecimal.valueOf(rateA.value())
: BigDecimal.valueOf(rateB.value());
final BigDecimal bdcSecond = rateB.instrument().equals(secondInstrument)
? BigDecimal.valueOf(rateB.value())
: BigDecimal.valueOf(rateA.value());
final FxRate numeratorRate =
instrument
.getPrimaryJFCurrency()
.equals(rateB.instrument().getSecondaryJFCurrency())
|| instrument
.getPrimaryJFCurrency()
.equals(rateA.instrument().getPrimaryJFCurrency()) ? rateA : rateB;
final FxRate denominatorRate = numeratorRate == rateA ? rateB : rateA;
final BigDecimal bdcFirst = BigDecimal.valueOf(numeratorRate.value());
final BigDecimal bdcSecond = BigDecimal.valueOf(denominatorRate.value());

final double crossValue = shouldDivide
? bdcFirst.divide(bdcSecond,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,13 +16,15 @@ public class CrossInstrumentTest extends CurrencyUtilForTest {
private CrossInstrument crossInstrumentB;
private CrossInstrument crossInstrumentC;
private CrossInstrument crossInstrumentD;
private CrossInstrument crossInstrumentE;

@Before
public void setUp() {
crossInstrumentA = new CrossInstrument(instrumentEURUSD, instrumentGBPUSD);
crossInstrumentB = new CrossInstrument(instrumentEURGBP, instrumentGBPUSD);
crossInstrumentC = new CrossInstrument(instrumentEURJPY, instrumentGBPJPY);
crossInstrumentD = new CrossInstrument(instrumentEURGBP, instrumentGBPJPY);
crossInstrumentE = new CrossInstrument(instrumentEURGBP, instrumentEURUSD);
}

@Test
Expand All @@ -31,6 +33,7 @@ public void instrumentIsCorrect() {
assertThat(crossInstrumentB.get(), equalTo(instrumentEURUSD));
assertThat(crossInstrumentC.get(), equalTo(instrumentEURGBP));
assertThat(crossInstrumentD.get(), equalTo(instrumentEURJPY));
assertThat(crossInstrumentE.get(), equalTo(instrumentGBPUSD));
}

@Test
Expand All @@ -39,6 +42,7 @@ public void crossCurrencyIsCorrect() {
assertThat(crossInstrumentB.crossCurrency(), equalTo(currencyGBP));
assertThat(crossInstrumentC.crossCurrency(), equalTo(currencyJPY));
assertThat(crossInstrumentD.crossCurrency(), equalTo(currencyGBP));
assertThat(crossInstrumentE.crossCurrency(), equalTo(currencyEUR));
}

@Test
Expand All @@ -64,5 +68,10 @@ public void crossRateIsCorrect() {
rateB = new FxRate(148.653, instrumentGBPJPY);
assertThat(crossInstrumentD.rate(rateA, rateB).value(),
equalTo(131.452));

rateA = new FxRate(0.86347, instrumentEURGBP);
rateB = new FxRate(1.07829, instrumentEURUSD);
assertThat(crossInstrumentE.rate(rateA, rateB).value(),
equalTo(1.24879));
}
}

0 comments on commit 7410107

Please sign in to comment.