Scala - это язык со статической типизацией, в котором аргументы, которые вы предоставляете методу, должны иметь определенные типы, чтобы вызов метода компилировался. Иногда методы перегружены, и в этом случае могут быть предоставлены различные комбинации аргументов, а в Scala иногда некоторые аргументы могут иметь значения по умолчанию, и в этом случае их вообще не нужно указывать.
Есть несколько способов определить, какие аргументы возможны для данного метода. Ваша IDE может показывать всплывающую подсказку при вводе MQTTUtils.createPairedStream(
. Иногда разработчики библиотеки публикуют документацию API, в которой показаны сигнатуры методов (которые включают типы аргументов и возвращаемое значение) в удобном для чтения формате. Если ни один из этих вариантов для вас не подходит и проект имеет открытый исходный код, вы можете просто посмотреть исходный код. В этом случае вы найдете что-то следующее (обратите внимание, что вам может потребоваться изменить тег в интерфейсе GitHub, если вы используете другую версию):
/**
* Create an input stream that receives messages pushed by a MQTT publisher.
* @param ssc StreamingContext object
* @param brokerUrl Url of remote MQTT publisher
* @param topics Array of topic names to subscribe to
* @param storageLevel RDD storage level. Defaults to StorageLevel.MEMORY_AND_DISK_SER_2.
*/
def createPairedStream(
ssc: StreamingContext,
brokerUrl: String,
topics: Array[String],
storageLevel: StorageLevel = StorageLevel.MEMORY_AND_DISK_SER_2
): ReceiverInputDStream[(String, String)] = {
new MQTTPairedInputDStream(ssc, brokerUrl, topics, storageLevel)
}
This является самой простой из восьми перегрузок метода createPairedStream
(все остальные принимают дополнительные аргументы). Это показывает, что вам необходимо предоставить (по порядку) StreamingContext
, URL-адрес брокера и массив тем.
Лучшая из лучших коллекций бесплатного и открытого программного обеспечения Mohawke показывает множество финансовых проектов с открытым исходным кодом, просто «сортировка по типу».
FinanceAI - это проект с открытым исходным кодом под лицензией Ms-RL, целью которого является предоставление передовых инструментов для искусственного интеллекта, статистики и математики для начинающих и опытных инвесторов. После завершения FinanceAI станет полной алгоритмической торговой платформой с обширными библиотеками AI и Quantitative Finance.
Список проектов с открытым исходным кодом на C # можно найти в здесь .
Существует затмение платформы открытого финансового рынка
Большинство финансовых компаний не любят открытый исходный код, поскольку они опасаются проблем с лицензированием при модификации программного обеспечения.
I've not used it further than the demo but Marketcetera are making a lot of noise recently. They offer a platform for automated strategy development through to execution and book keeping. From memory I think the technology is Java, ActiveMQ, Ruby on Rails.
OpenAMQ - Messaging / Middleware
R - programming language used for stats
(Невысокий уровень, но растет органически здоровым)
JStock - Бесплатное программное обеспечение фондовой биржи
Вышеупомянутый URL больше ориентирован на конечных пользователей. Если вы ищете информацию, связанную с разработчиками, вы можете начать смотреть их вики .
Реализации FIX с открытым исходным кодом - http://www.fixprotocol.org/
QuickFIX - http://www.quickfixengine.org/ и QuickFIX / J - http://www.quickfixj.org/
Я использовал QuickFIX / J в производственной среде, он довольно стабилен, а кодовая база проста в навигации и понимании. Фактически Marketcetera использует QuickFIX / J для своего механизма исправлений.