Friday 2 February 2018

무역 시스템 자바


거래 시스템 java
오픈 자바 트레이딩 시스템의 홈에 오신 것을 환영합니다.
Open Java Trading System (OJTS)은 주식 거래 시스템을 개발하기위한 공통 인프라입니다. 인터넷의 원시 데이터 수집은 거래 신호의 인식과 시각화 모듈 및 은행과 같은 거래 플랫폼의 프로그래밍 방식 인터페이스에 연결되는 모듈로 구성됩니다. 이 프로젝트의 목적은 거래 시스템 개발자를위한 자체적 인 순수 Java (플랫폼 독립적) 공통 인프라를 제공하는 것입니다. 해결해야 할 몇 가지 측면은 재무 데이터를 저장하기위한 공통 SQL92 호환 데이터베이스 스키마, 서로 다른 모듈 간의 데이터 교환 방법, 원시 재무 데이터 및 거래 신호의 시각화 및 기타 여러 가지 공통적 인 측면을 작성하는 것입니다. 최종 거래 시스템.
직장과 가족 때문에 OJTS를 개선 할 시간을 찾지 못했습니다. 나는 그 영역에서 더 활동적인 자바 오픈 소스 프로젝트를 안내 할 링크 섹션을 계속해서 업데이트하려고합니다.
실제로 주식 시장의 역 동성에 대한 나의 관심의 결과로, 저는 환율의 이해를 돕기 위해 국가 경제에 대한 더 자세한 내용을보기 시작했습니다. 이 주제는 마침내 우리가 "가치", "성공"또는 "유용성"을 측정하기 위해 경제학에서 사용하는 미터 단위로서의 돈에 대한 더 깊은 연구로 이어졌습니다. 이 주제는 매우 흥미로운 것으로 밝혀졌지만 동시에 우리의 통화 시스템이 어떻게 작동하는지에 대한 정보를 찾는 것은 매우 어려웠습니다. 돈을 어디에서 얻고, 누가 돈을 창출하는지, 그리고 돈의 가치를 결정하는 것은 사람들에게 물어보십시오. 석사 학위 또는 Phd. 경제학과에서는 이러한 세부 사항을 알 수 없습니다. 오, 그래, 그들은 약간의 기술적 인 용어로 대답 할 것이지만, 프로세스를 설명하는 간단한 다이어그램을 그릴 수는 없을 것이다.
H. G. Wells는 다음과 같이 말했습니다 :
"통화를 쓰는 것은 일반적으로 불쾌한, 실제로 거의 외설스러운, 관행으로 인식된다 편집자는 작가가 돈을 쓰지 않는 것을 거의 눈물을 흘리지 않을 것입니다. 흥미롭지 않은 주제이기 때문에가 아니라 항상 심오한 혼란을 겪었 기 때문입니다. . "
나는 민주 사회에 살고있는 어떤 사람에게이 주제에 관해 읽을 것을 제안한다. 그것은 exagerated 수없는 정도로 우리의 삶에 매일 영향을 미칩니다! 내 의견으로는, 그 세계에있는 민주주의 국가의 모든 시민들은 우리 돈이 어디서 오는지 알고 있어야합니다. 당신은 화폐 부를 증가시키는 데 도움이되는 도구를 찾기 위해이 웹 사이트를 방문했을 가능성이 큽니다. 미터법 단위 "돈"(달러 또는 유로와 상관없이)을 이해하는 것은 돈을 벌기위한 툴킷에서 중요한 요소가 될 것입니다.
시간이 없으면 그 주제에 관한 단 하나의 책을 읽을 여력 만 있으면 Frederick Soddy가 부, 가상 부와 부채를 읽을 것을 제안합니다. 아마존을 통해 23.48 달러에 중고 사본을 살 수 있었지만 온라인 버전도 있습니다. 그것을 읽으려면 DjVu 플러그인이 필요합니다. 이 책은 원래 1929 년에 출판되었지만 실제 사실을 잘 설명하고 있습니다. Frederick Soddy의 모든 결론에 동의하지 않더라도 그의 작품은 즐겁게 자극적 인 것으로 생각되며 올바른 질문을하게됩니다.
릴리즈, 버그 수정 및 업데이트 된 문서
나는 OJTS가 다른 자바 거래 시스템 노력에 더 호환되도록 만드는 방법을 조사하고있다.
ITSdoc. org에는 투자 및 거래 시스템 분야의 지식 배포에 중점을 둔 새로운 위키가 있습니다. ITSdoc. org의 배경은 커뮤니티가 지식을 공유하도록 도와주는 위키피디아와 유사한 공동 작업 플랫폼을 갖추는 것입니다.
어제 OpenJavaTradingSystem 라이브러리 버전 0.13을 릴리스했습니다. 새로운 기능 중에는 OnVista의 주식, 자금 및 통화에 대한 데이터 검색이 있습니다. 통화 처리 및 전환 구현. 포트폴리오가 구현되고 단일 보안 용지 항목과 동일한 방식으로 포트폴리오를 사용할 수 있습니다. 알고리즘을 주식 시장 시계열에 적용하기위한 일반적인 프레임 워크를 추가했습니다. SISC / Scheme 대화 형 셸에서 ABCL / CommonLisp 및 "J"라는 편집기로 전환되었습니다. 파일 시스템에서 웹을 통해 이미 검색된 데이터를 캐싱하기위한 일반적인 데이터 캐싱 메커니즘을 추가했습니다. 더 많은 사소한 개선 사항이 새로운 버전에 관심이 있으시면 퀵 스타트 / 스크린 샷 섹션에서 시작하십시오. 매뉴얼은 아직 업데이트되지 않았지만 프로젝트에서 라이브러리를 사용하려면 유용한 배경 정보를 제공 할 수 있습니다. 설명서가 곧 업데이트되어야합니다.
의사 결정.
프로젝트의 내부를 설명하는 문서. Java 데이터 오브젝트 및 인터페이스 문서
& gt; & gt; HTML & gt; & gt; PDF 투자 및 거래 시스템 문서화 프로젝트
T e c h h o o o o g.
이 프로젝트에 사용 된 제 3 자 빌딩 블록.
HSQLDB는 타사 데이터베이스를 설치하지 않고 즉시 OJTS를 사용할 수 있도록 프로젝트와 함께 제공되는 데이터베이스 엔진입니다. 그러나 다른 SQL92 호환 데이터베이스를 사용하려는 경우이 옵션이 구성 옵션입니다. Castor (라이센스 : Exolab 라이센스)
Castor는 Java [tm] 용 오픈 소스 데이터 바인딩 프레임 워크입니다. Java 오브젝트, XML 문서 및 관계형 테이블 간의 최단 경로입니다. Castor는 Java-to-XML 바인딩, Java-to-SQL 지속성 등을 제공합니다. Castor 도크 렛 (라이센스 : GNU LGPL v2.1)
Castor JDO 및 Castor XML에 대한 매핑 및 DDL 파일을 생성하는 Java 도크 렛. TestMaker (라이센스 : TestMaker 오픈 소스 라이센스)
TestMaker 프로젝트에서 HTTP 또는 HTTPS와 같은 프로토콜 구현 만 웹에서 데이터를 수집하는 데 사용됩니다. jCookie (라이센스 : GNU LGPL v2.1)
jCookie 라이브러리는 TestMaker 라이브러리가 작동하는 데 필요합니다. htmlparser (라이센스 : GNU LGPL v2.1)
htmlparser 라이브러리는 웹 자원에서 데이터를 추출하는 데 사용됩니다. ABCL / CommonLisp (라이센스 : GNU GPL v2)
ABCL (Armed Bear Common Lisp)은 ANSI Common Lisp 프로그래밍 언어로 프로젝트의 알고리즘 중심을 구현하는 데 사용됩니다. JFreeChart (라이센스 : GNU LGPL v2.1)
JFreeChart는 재무 데이터를 차트로 시각화하는 데 사용됩니다. JSci (라이센스 : GNU LGPL v2.1)
Joda Time은 원래 JDK 날짜 및 시간 클래스를 대체합니다.
다른 프로젝트에 대한 링크.
JavaTraders Google 그룹은 다른 Java 기반 거래 시스템 및 도구에 대해 알아볼 수있는 최고의 항목 일 수 있습니다.
이 프로젝트의 코드는 LGPL의 조건에 따라 사용이 허가되며이 프로젝트에서 찾은 모든 문서는 FDL의 조건에 따라 사용이 허가됩니다.

거래 시스템 java
이 웹 페이지는 자바로 구현 된 일중 거래 시스템에서했던 일부 작업에서 왔습니다. 이 소프트웨어는 Tomcat Java 응용 프로그램 서버에서 실행되며 실시간 시장 데이터 스트림을 읽는 거래 모델을 지원합니다. 이 데이터 스트림을 기반으로 소프트웨어는 구매 및 판매 주문을 생성하고 시장 위치를 ​​추적합니다.
제발 어떤 거래 기법이 부자가 될지 묻지 마십시오. 복잡한 소프트웨어 시스템을 구현하는 것에 대해 많은 것을 알고 있으며 시장 거래 시스템 구축에 대해 알고 있습니다. 나는 아직도 삶을 위해 일하고 있으므로 비밀스런 소스를 직접 발견하지 못했던 것으로 보입니다. 나는 당신에게 나누어 줄 현저한 시장 주주가 없다.
특정 조건 하에서 나는 외부 컨설팅 프로젝트를 고려할 것입니다. 컨설팅 프로젝트는 고용주의 승인을 받아야하기 때문에 시작하는 데 약간의 오버 헤드가 있습니다 (이 프로젝트를 마지막으로 수행 한 경우 승인을 얻는 데 1 개월이 걸렸습니다). 저는 미국 시민, 영연방 시민권 자나 북대서양 조약기구 (NATO) 동맹국과 만 일할 수 있습니다. 시간당 요율로 근무하는 사람들을위한 첫 번째 규칙은 돈을받는 것이므로, 벤처 기업의 주식에 무료로 일한다는 제안을하지 마십시오. 저는 매우 숙련 된 소프트웨어 엔지니어이자 컴퓨터 과학자이며 시간당 요금은이를 반영합니다.
trade_engine. tar. gz 이것은 내가 개발 한 거래 시스템입니다. 본인은이 소프트웨어의 저작권을 소유하고 있으며 허가없이 상업적 목적으로 사용할 수 없습니다. 또한 어떠한 종류의 시장 거래에 대해서도이 소프트웨어를 허가없이 사용할 수 없습니다. 참조 이외의 목적으로이 소프트웨어를 사용할 수있는 권한이 없으므로이 소프트웨어의 오류나 사용 중 발생한 문제에 대해 책임을지지 않습니다.
이 소프트웨어는 약간 날짜가 표시됩니다. 현재 더 많은 자바 리소스가 있습니다. 이것은 핵심 아키텍처를 보여 주지만, 현재 Java 자원을 사용하여 더 나은 시스템을 구현할 수 있습니다.
거래 시스템은 Java 인터페이스를 통해 Interactive Brokers 거래 시스템과 함께 작동하도록 설계되었습니다.
이 웹 페이지는 내가 개발 한 거래 시스템의 설계에 관한 노트로 구성됩니다. 일부 기술적 분석 스타일의 일일 거래 모델에 대한 실험 노트도 있습니다.
Java 거래 시스템은 복잡한 소프트웨어 인프라 스트럭처에 의해 지원됩니다. 여기에는 Apache Tomcat 웹 서버 (응용 프로그램 서버), 실시간 데이터 피드 및 사용자와의 웹 브라우저 기반 상호 작용을 지원하는 소프트웨어가 포함됩니다. 거래 시스템을 지원하는 데 필요한 소프트웨어를 연구하면서이 노트를 만들었습니다.

Java의 자동 주식 거래 시스템.
예산 $ 30-250 USD.
프리랜서는 Java의 Java 자동 주식 거래 시스템을 채용합니다.
우리는 주식 / 통화 시장에서 일하고 있습니다. 우리는 Interactive Brokers의 Trade WorkStation에 주문할 수있는 Java 용 Automated Trading System을 개발할 수있는 프리랜서를 찾고 있습니다.
Interactive Brokers는 자사의 요구 사항에 따라 자동 거래 애플리케이션을 개발할 수있는 API (Application Programming Interface)를 제공합니다.
우리의 요구 사항은 매우 간단합니다.
자동화 된 거래 시스템에서 얻고 자하는 것이 무엇인가?
 우리는 출입국 가격을 가지고 있습니다. 우리는 우리의 입장료와 출구 가격으로 거래 할 수량이 있습니다.
 당사의 시스템은 실제 시장 가격 및 순 수량 (미결 위치)을 모니터링해야하므로 Trade WorkStation에 대한 주문 (출입 가격)을 자동으로 배치해야합니다.
 우리는 과거 데이터가 필요하지 않습니다.
 과거 데이터 또는 라이브 데이터를 분석 할 필요가 없습니다.
 스크립트 스캔이나 탐색이 필요 없습니다.
 우리는 어떤 방법이나 계산 (일반적으로 자동화 된 거래 시스템의 가장 일반적인 부분 임)을 사용하여 데이터의 자동 분석이 필요하지 않습니다.
분석을위한 프로그램을 개발할 필요가 없다는 의미입니다.
돈 좀 벌려고?
예산 및 일정을 정하십시오.
제안서 개요.
당신의 일에 대한 보수를 받으십시오.
직업에 가입하고 입찰 할 수 있습니다.
20 명의 프리랜서가 평균적으로이 직업에 205 달러를 입찰하고 있습니다.
제안서가 아직 제공되지 않았습니다.
안녕하세요 선생님 / Mam NovaSofts Inc. 는 이슬라마바드 파키스탄의 선도적 인 IT 회사입니다. 우리는 프로그래밍 언어에 대한 9 년 이상의 경험과 강력한 지식을 가지고 있습니다. Java C ++ C # Android 그럼 More에 대해 걱정하지 않아도됩니다.
스킬 세트 나는 스칼라 / 자바 / 자바 프로그래머로 정보 기술 공학 학위를 취득했다. IT 제품 및 서비스에 대한 경험을 통해 더 많은 고객을위한 전문적인 지원을 제공 할 수 있습니다.
저는 IITK 졸업생이며 9 년 경력의 소프트웨어 전문가이며 기술 분야에서 경험을 쌓은 최고의 팀원을 보유하고 있습니다. 저의 팀원들은 최고 수준의 T More로 일했습니다.
저는 Java 설계 및 개발 분야에서 10 년 이상의 경력을 쌓은 수석 Java 개발자입니다. 코드 샘플 [제거 된 URL, 보기로 로그인] CV [삭제 된 URL, 보기로 이동]
안녕하세요, 저는 재무 신청서에 상당히 관심이 있습니다. 저는 과거에 주식 및 외환 시장 거래 신청서를 작성했습니다. 내 프로필이 동일하게 반영됩니다. 더 자세한 정보를 제공 할 수 있습니다.
안녕하세요 선생님은 내가 고급 자바 개발자이고 나는 이클립스와 netbeans를 사용하여 7 년 이상 beautifull 애플 리케이션을 developping, 그냥 당신의 문제를 해결할 것입니다 말해. 자세한 내용은 저에게 문의하십시오.
저는 IT 분야에서 학사와 석사 학위를 받았습니다. 내 기본 기술에는 Java, Python, VB /, ArcGIS 및 PHP가 포함됩니다. 또한 데이터베이스 기술로는 MS Access, MySQL 및 Oracle이 있습니다. 내 기타 기술에는 서버 및 네트워크 관리자가 포함됩니다.
안녕하세요, 저는이 일을하고 싶습니다. 자동화 및 데이터 스크래핑 분야에서 뛰어난 경험을 가진 Java 개발자입니다.
나는 주식 시장에 대해 잘 알고있는 절친한 친구가있어서 그걸 이해하고 당신에게 최고의 소프트웨어 솔루션을 제공하는 것이 쉬울 것입니다.
제안서가 아직 제공되지 않았습니다.
프로젝트에 관심이 있으시면 프로젝트 세부 정보를 나에게 알려주십시오.
20 년간의 자기 주도적이고 동기 부여가 된 기술 프로젝트 리더 & # 039; Java / J2EE, 스마트 폰 및 PHP 기술 경험 클라이언트 / 서버 응용 프로그램을 개발하고 유지 관리하는 데 탁월합니다. 나는 열심히 일하고 있습니다.
돈 좀 벌려고?
예산 및 일정을 정하십시오.
제안서 개요.
당신의 일에 대한 보수를 받으십시오.
직업에 가입하고 입찰 할 수 있습니다.
이 고용주의 다른 직업.
비슷한 일.
직업을 위해 프리랜서를 고용해야합니까?
가입하는 데 자유롭고 필요한 것을 입력하고 & amp; 무료 견적을 초 만에 받으십시오.
영어 - 미국 (국제)
프리랜서.
자귀.
프리랜서 & 등록 번호; Freelancer Technology Pty Limited (ACN 142 189 759)의 등록 상표입니다.
저작권 및 사본; 2017 Freelancer Technology Pty Limited (ACN 142 189 759)

Akka로 거래 시스템 간소화.
DZone 커뮤니티에 가입하여 전체 회원 경험을 얻으십시오.
Java 개발자 용 Microservices 다운로드 : 프레임 워크 및 컨테이너에 대한 실용적인 소개. Red Hat과 제휴하여 당신에게 가져 왔습니다.
저의 동료들은 들어오는 거래가 상당히 많은 흐름을 처리하는 거래 시스템을 개발하고 있습니다. 각 거래는 하나의 계좌 (채권 또는 주식을 생각하는)를 다루며 중요하지 않은 자산이 있습니다. 그들은 자바 (<8)로 붙어 있으므로, 그것에 충실하자 :
인스 트 르멘 트는, 나중에 HashMap의 키로서 사용되기 (위해) 때문에, 장래에 우리는 Comparable & lt; Instrument & gt; . 이것은 이제 우리의 요구 사항입니다.
거래가 시스템에 들어가서 가능한 한 빨리 처리해야합니다 (어떤 의미이든). 우리는 임의의 순서로 처리 할 수 ​​있습니다. 그러나 동일한 계측기에 대한 트랜잭션은 들어오는 순서와 동일한 순서로 순차적으로 처리해야합니다.
초기 구현은 간단했습니다. 들어오는 모든 트랜잭션을 단일 소비자와 함께 대기열 (예 : ArrayBlockingQueue)에 넣습니다. 이것은 큐가 모든 트랜잭션에서 엄격한 FIFO 순서를 보존하기 때문에 마지막 요구 사항을 만족시킵니다. 그러나 이러한 아키텍처는 서로 다른 계측기에 대한 관련없는 트랜잭션의 동시 처리를 방지하므로 강력한 처리량 개선을 낭비합니다. 당연히이 구현은 의심의 여지없이 단순하지만 병목 현상이되었습니다.
왝! 그러나 최악은 아직 나오지 않았다. 한 번에 하나의 스레드가 각 큐를 처리하는지 어떻게 확인합니까? 결국 두 개의 스레드가 하나의 대기열 (하나의 계측기)에서 항목을 선택하여 역순으로 처리 할 수 ​​있습니다. 허용되지 않습니다. 가장 간단한 경우는 대기열 당 스레드를 갖는 것입니다. 이는 수만 개의 서로 다른 계측기가 예상하기 때문에 규모가 조정되지 않습니다. 그래서 우리는 N 개의 쓰레드를 말하고 그들 각각이 큐의 부분 집합을 처리하도록 할 수 있습니다. instrument. hashCode () % N은 주어진 큐를 처리하는 스레드를 알려줍니다. 그러나 다음 세 가지 이유로 완벽한 것은 아닙니다.
하나의 스레드는 "관찰"해야한다. 대부분의 대기열은 대개 대기 중이며 항상 대기열을 반복합니다. 양자 택일로 대기열이 어떻게 든 부모 스레드를 깨울 수 있습니다 최악의 경우 모든 악기는 하나의 스레드만을 대상으로 충돌하는 해시 코드를 갖습니다. 이는 사실상 초기 솔루션과 동일합니다. 아름다운 코드는 복잡하지 않습니다!
이 괴물을 구현하는 것은 가능하지만 어렵고 오류가 발생하기 쉽습니다. 또한 다른 비 기능 요구 사항이 있습니다. 장비가오고 갈 때 시간이 지남에 따라 수십만 개가 필요합니다. 잠시 후 우리지도에서 최근에 보지 못한 악기를 나타내는 항목을 삭제해야합니다. 그렇지 않으면 메모리 누수가 발생합니다.
이것은 간단하다. Dispatcher 액터가 효과적으로 단일 스레드이므로 동기화가 필요 없습니다. 우리는 간신히 Transaction을 받고, 조회하거나 프로세서를 생성하고 Transaction을 전달합니다. 다음은 프로세서 구현 방식입니다.
그게 다야! 흥미롭게도 우리의 Akka 구현은 대기열지도를 사용한 첫 번째 아이디어와 거의 동일합니다. 결국 모든 액터는 단지 대기열이고 그 큐의 항목을 처리하는 (논리적 인) 쓰레드입니다. 차이점은 Akka는 제한된 스레드 풀을 관리하고 수십만 명의 액터 사이에서 공유한다는 점입니다. 그리고 모든 악기는 고유 한 (및 "단일 스레드") 액터를 가지므로 악기 당 트랜잭션의 순차 처리가 보장됩니다.
분명히 프로세서가 한 시간 동안 아무런 메시지도받지 못하면 프로세서를 부모 (Dispatcher)에게 부드럽게 알려줍니다. 그러나 배우가 아직 살아 있고 정확히 1 시간 후에 발생하면 거래를 처리 할 수 ​​있습니다. Dispatcher는 프로세서를 죽이고 맵에서 제거합니다.
약간의 불편 함이있었습니다. instrumentProcessors는 Map & lt; Instrument, ActorRef & gt; . 이것은 우리가 갑자기 가치에 의해이지도의 항목을 제거해야하기 때문에 불충분 한 것으로 판명되었습니다. 즉 주어진 ActorRef (프로세서)에 매핑되는 키 (Instrument)를 찾아야합니다. 여러 가지 방법으로 처리 할 수 ​​있습니다 (예 : 유휴 프로세서가 Instrumnt을 처리 할 수 ​​있음). 대신 BiMap & lt; K, V & gt; 구아바에서 온. 이것은 Instrument와 ActorRef가 서로 다르기 때문에 독특합니다 (instrument per actor). BiMap을 가짐으로써지도 (BiMap & lt; Instrument, ActorRef & gt;에서 BiMap & lt; ActorRef, Instrument & gt;로 이동하고 ActorRef를 키로 처리 할 수 ​​있습니다.
Java의 Reactive Microservices 빌드 : 비동기 및 이벤트 기반 응용 프로그램 설계. Red Hat과 제휴하여 당신에게 가져 왔습니다.
이 기사처럼? 자세히 읽기 DZone.
무료 DZone Refcard.
스칼라 시작하기.
Tomzz Nurkiewicz, DZone MVB의 허가를 받아 DZone에 게시 됨. 여기에 원본 기사를 참조하십시오.
DZone 기고자가 표명 한 의견은 각자의 의견입니다.

No comments:

Post a Comment