Package

com.coherentlogic.cmr

quandl

Permalink

package quandl

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. quandl
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. implicit class QuandlTablesQueryBuilderDecorator extends QueryBuilderDecorator[QuandlResponse]

    Permalink

    import scala.collection.mutable.MutableList import scala.compat.java8.FunctionConverters._ import com.coherentlogic.cmr.api.builders.CMR import com.coherentlogic.cmr.quandl._ import com.coherentlogic.quandl.client.core.domain.tables.Column import com.coherentlogic.quandl.client.core.domain.tables.Columns import com.coherentlogic.quandl.client.core.domain.tables.Datum import com.coherentlogic.quandl.client.core.domain.tables.DatumArray

    import scala.collection.mutable.MutableList import scala.compat.java8.FunctionConverters._ import com.coherentlogic.cmr.api.builders.CMR import com.coherentlogic.cmr.quandl._ import com.coherentlogic.quandl.client.core.domain.tables.Column import com.coherentlogic.quandl.client.core.domain.tables.Columns import com.coherentlogic.quandl.client.core.domain.tables.Datum import com.coherentlogic.quandl.client.core.domain.tables.DatumArray

    val QUANDL_API_KEY=System.getenv ("QUANDL_API_KEY")

    val cmr = new CMR ()

    case class MerF1 (reportDate : java.sql.Date, amount : scala.math.BigDecimal) {} def mapper (quandlResponse : com.coherentlogic.quandl.client.core.domain.tables.QuandlResponse) : scala.collection.mutable.Seq[MerF1] = {

    var result : MutableList[MerF1] = MutableList()

    var dataTable : com.coherentlogic.quandl.client.core.domain.tables.DataTable = quandlResponse.getDataTable

    val columns : Columns = dataTable.getColumns();

    val columnMap = columns.asMap();

    val reportDateColumn : Column = columnMap.get("reportdate"); val amountColumn : Column = columnMap.get("amount");

    val reportDateIndex = columns.getIndexOf (reportDateColumn) val amountIndex = columns.getIndexOf (amountColumn)

    dataTable.getData.forEachDatumArray ( asJavaConsumer[com.coherentlogic.quandl.client.core.domain.tables.DatumArray] ( (datumArray : com.coherentlogic.quandl.client.core.domain.tables.DatumArray) => {

    val reportDateDatum : Datum = datumArray.getDatumAt(reportDateIndex); val amountDatum : Datum = datumArray.getDatumAt(amountIndex);

    val reportSQLDate = reportDateDatum.getValueAsSQLDate () val amount = new scala.math.BigDecimal(amountDatum.getValueAsBigDecimal ())

    result += new MerF1 (reportSQLDate, amount) } ) ) result }

    import spark.implicits._

    val merF1Seq : Seq[MerF1] = cmr.quandl.tables.datatables("MER", "F1").withApiKey(QUANDL_API_KEY).doGetAsSeq (mapper)

    merF1Seq.toDS.show(5) merF1Seq.toDS.count

  2. implicit class QuandlTimeSeriesDataQueryBuilderDecorator extends QueryBuilderDecorator[Data]

    Permalink
  3. implicit class QuandlTimeSeriesMetadataQueryBuilderDecorator extends QueryBuilderDecorator[QuandlResponse]

    Permalink

    import scala.collection.mutable.MutableList import scala.compat.java8.FunctionConverters._ import com.coherentlogic.cmr.api.builders.CMR import com.coherentlogic.cmr.quandl._ import com.coherentlogic.quandl.client.core.domain.timeseries.ColumnNames

    import scala.collection.mutable.MutableList import scala.compat.java8.FunctionConverters._ import com.coherentlogic.cmr.api.builders.CMR import com.coherentlogic.cmr.quandl._ import com.coherentlogic.quandl.client.core.domain.timeseries.ColumnNames

    val QUANDL_API_KEY=System.getenv ("QUANDL_API_KEY")

    val cmr = new CMR ()

    case class EODHD (columnName : String) {} def mapper (quandlResponse : com.coherentlogic.quandl.client.core.domain.timeseries.metadata.QuandlResponse) : scala.collection.mutable.Seq[EODHD] = { val result : MutableList[EODHD] = MutableList()

    val dataset = quandlResponse.getDataset

    val columnNames = dataset.getColumnNames();

    columnNames.forEachColumnName ( asJavaConsumer[String] ( columnName => { result += new EODHD (columnName) } ) )

    result }

    import spark.implicits._

    val eodHDSeq : Seq[EODHD] = cmr.quandl.metadata.datasets("EOD", "HD").metadata().withApiKey(QUANDL_API_KEY).doGetAsSeq (mapper)

    val eodHDDS = eodHDSeq.toDS

    eodHDDS.show(5) eodHDDS.count

Inherited from AnyRef

Inherited from Any

Ungrouped