Created
January 6, 2020 02:04
-
-
Save Laeeth/4fdc7b16ca166418ac8a2a3ad5eb4d4a to your computer and use it in GitHub Desktop.
Opengamma JNI
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
javac -classpath "/usr/lib/jkm/default-runtime/jre/lib:/tank3/data/symmetry/develop/Strata/target/z/strata-dist-2.6.10-SNAPSHOT/lib/*:." Main.java | |
java -classpath "/usr/lib/jkm/default-runtime/jre/lib:/tank3/data/symmetry/develop/Strata/target/z/strata-dist-2.6.10-SNAPSHOT/lib/*:." -D"java.library.path=." Main |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
//package io.kaleidic.main; | |
import com.opengamma.strata.basics.index.IborIndex; | |
import com.opengamma.strata.basics.index.IborIndices; | |
import com.opengamma.strata.product.fra.Fra; | |
import com.opengamma.strata.product.fra.FraTrade; | |
import com.opengamma.strata.product.TradeInfoBuilder; | |
import com.opengamma.strata.product.AttributeType; | |
class Main { | |
public native FraTrade foo(Fra.Builder builder); | |
static { | |
System.loadLibrary("dubtest"); | |
} | |
public TradeInfoBuilder addDescription(TradeInfoBuilder builder, String val) | |
{ | |
return builder.addAttribute(AttributeType.of("DESCRIPTION"),val); | |
} | |
public static void main(String[] args) { | |
System.out.println("hello from java"); | |
Main h = new Main(); | |
Fra.Builder fraBuilder = Fra.builder().index(IborIndex.of("GBP-LIBOR-6M")); | |
FraTrade fraTrade = h.foo(fraBuilder); | |
System.out.println(fraTrade.toString()); | |
System.out.println("done from Java"); | |
} | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
//module io.kaleidic.dmain; | |
import arsd.jni; | |
import translated.java.time.LocalDate; | |
import translated.java.time.LocalDate_d_interface; | |
import translated.com.opengamma.strata.collect.io.IniFile; | |
import translated.com.opengamma.strata.collect.io.IniFile_d_interface; | |
import translated.com.opengamma.strata.collect.io.ResourceLocator; | |
import translated.com.opengamma.strata.collect.io.ResourceLocator_d_interface; | |
import translated.com.opengamma.strata.report.trade.TradeReportTemplate_d_interface; | |
//import org.joda.convert | |
import translated.com.opengamma.strata.basics.StandardId; | |
import translated.com.opengamma.strata.basics.StandardId_d_interface; | |
import translated.com.opengamma.strata.basics.index.IborIndices; | |
import translated.com.opengamma.strata.basics.index.IborIndices_d_interface; | |
//import translated.com.opengamma.strata.basics.index.Index; | |
//import translated.com.opengamma.strata.basics.index.Index_d_interface; | |
import translated.com.opengamma.strata.basics.index.IborIndex; | |
import translated.com.opengamma.strata.basics.index.IborIndex_d_interface; | |
import translated.com.opengamma.strata.product.AttributeType_d_interface; | |
import translated.com.opengamma.strata.product.common.BuySell; | |
import translated.com.opengamma.strata.product.common.BuySell_d_interface; | |
import translated.com.opengamma.strata.product.TradeInfo; | |
import translated.com.opengamma.strata.product.TradeInfo_d_interface; | |
import translated.com.opengamma.strata.product.TradeInfoBuilder; | |
import translated.com.opengamma.strata.product.TradeInfoBuilder_d_interface; | |
import translated.com.opengamma.strata.product.fra.Fra; | |
import translated.com.opengamma.strata.product.fra.Fra_d_interface; | |
import translated.com.opengamma.strata.product.fra.FraDiscountingMethod; | |
import translated.com.opengamma.strata.product.fra.FraDiscountingMethod_d_interface; | |
import translated.com.opengamma.strata.product.fra.FraTrade; | |
import translated.com.opengamma.strata.product.fra.FraTrade_d_interface; | |
import translated.com.opengamma.strata.product.fra.Fra_Builder; | |
import translated.com.opengamma.strata.product.fra.Fra_Builder_d_interface; | |
import translated.com.opengamma.strata.product.fra.FraTrade_Builder; | |
import translated.com.opengamma.strata.product.fra.FraTrade_Builder_d_interface; | |
final class Main: JavaClass!("",Main) { | |
@Export FraTrade foo(Fra_Builder builder) { | |
import std.stdio; | |
import std.conv : to; | |
writefln("hihihifoo"); | |
//auto index = Main.of("GBP-LIBOR-3M"); | |
//writeln(index); | |
//writeln(index.getCurrency()); | |
//writeln(index.getTenor()); | |
//writeln(index.getFixingCalendar()); | |
//auto fra = Fra.builder() | |
auto fra = builder | |
.buySell(BuySell.of("SELL")) | |
//.index(index) // Main.of("USD-LIBOR-3M")) | |
.startDate(LocalDate.of(2014,9,12)) | |
.endDate(LocalDate.of(2014,12,12)) | |
.fixedRate(0.0125) | |
.notional(10_000_000) | |
.build(); | |
auto fraTrade = FraTrade.builder() | |
.product(fra) | |
.info(addDescription( | |
TradeInfo.builder() | |
.id(StandardId.of("example","1")) | |
.counterparty(StandardId.of("example","A")) | |
.tradeDate(LocalDate.of(2014,9,12)) | |
.settlementDate(LocalDate.of(2014,9,14)),"0x3 FRA") | |
.build()) | |
.build(); | |
//.addAttribute(AttributeType.of("DESCRIPTION"),"0x3 FRA"w) | |
return fraTrade; | |
} | |
@Import TradeInfoBuilder addDescription(TradeInfoBuilder builder, string s); | |
} | |
void main() {} | |
extern(C) void atexit() {} | |
extern(C) __gshared string[] rt_options=["oncycle=ignore"]; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment