forked from AT1924/Crypthub
-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Akhil
authored and
Akhil
committed
May 9, 2020
1 parent
30492a6
commit 32f9de9
Showing
306 changed files
with
127,820 additions
and
0 deletions.
There are no files selected for viewing
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
1) check out the merge |
Binary file not shown.
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
# Cryptocurrency Trading Software | ||
|
||
We will create an automated cryptocurrency trading application that will be automatically buy and sell different cryptocurrencies on the Binace marketplace using the Binance API. We will incorperate many alogorithms to make trading more profitable and efficient. Some of the simple algorithms that we will incorperate into this software application will be stop losses (buy/sell when the cryptocurrency falls below a certain price), limit orders (buy/sell when it rises above a certain price). We will also be incorperating an arbitrage strategy which will essentially be finding the most profitable path between multiple exchanges in order to earn the most amount of money (hint graphs and dijkstras). Another feature of our software will be using NLP to analyze text data from investor relations hearings and/or expert reports in order to find valuable information on whether or not to buy or sell a given coin. (this will be using a similar ranking algorithm from autocorrect, we will also update the weight of each expert, hint, The expert problem) There are many other algorothms we hope to implement into our trading software that will make our algorithms more suited for dealing with the cryptocurrency market. | ||
|
||
Some of the data structures we will implement include directed graphs for arbitrage monitoring, maps for the NLP tasks and trees for the experts problem. | ||
|
||
We will primarily be using Java to build the application backend. To link it with the application frontend, we will be using javascript. On the frontend we will use bootstrap and react to create an exception, realtime application. The website will also include user functionality in which users are allowed to create accounts and update their profiles with information they deem important to the success of their trading profile. | ||
# Discovery Engine | ||
Another project that we can possibly create a discovery engine for tracking recent trends and areas of innovation. We would be able to track which areas are rife for opportunity using a compilation of google trends data and google searches and output to the user which areas have experienced high growth but have not yet reached a bigger audience. This could come into play into many applications. One example is for entrepreneurs looking to find which new ideas to work on in order to catch onto a growing trend that consumers want. This type of discovery engine could also be used for discovering new songs, etc. The algorithms in this idea would track the greatest rate of change in popularity of several general topics. The algorithm can also track how "deep" in a topic that this article is and use a variety of factors to determine the weight put on the page. For instance if the query is related to fashion chances are that the user would prefer to first see global and large fashion trends and as they query further are shown more niche topics. | ||
|
||
As with the previous project, Java will be used to build the backend, and Javascript, Node.js, react, bootstrap, to build the frontend. The GUI can also feature user functionality. | ||
# Auto song mixing application | ||
Another project idea is to create a music transition application that creates seamless transitions between any number of songs. The algorithm will use a deep learning GAN trained on a database of songs in order to expertly create transitions that match the pace, style and bpm of different songs. The application would have to use some sort of learning protocols in order to build on the data and the projects algorithms will deal with splicing the correct data of the songs and feeding them to the learning unit. This algorithm although subjective would have to have to deal with transfering audio files to reasonale data that our GAN can interpret. | ||
|
||
As with the previous project, Java will be used to build the backend, and Javascript, Node.js, react, bootstrap, to build the frontend. The GUI can also feature realtime mixing of uploaded songs so as to give the user a more interactive GUI. | ||
|
||
We were thinking of creating a web based GUI that allows users to view their transition matching take place in front of them. | ||
|
||
Our team comes from many different backgrounds. Two of our team members have experience working with machine learning and deep learning models and this will come in hand when we will incorperate NLP into our software. Three of our team members have experience working with web applications and this will be useful in creating an exception user interface and user experience. Finally we have a person on our team who has mutiple years of experience in the cryptocurrency market and understands the limitations of Binance and the Binance API. One of our weaknesses include incorperating all the various parts of the project that can be combined to convey information to the user on the frontend. We will be meeting up quite frequently in order to ensure that all componenets of the application match up as expected and all team members are on track. |
Binary file not shown.
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,197 @@ | ||
<?xml version="1.0"?> | ||
<!DOCTYPE module PUBLIC | ||
"-//Puppy Crawl//DTD Check Configuration 1.3//EN" | ||
"http://www.puppycrawl.com/dtds/configuration_1_3.dtd"> | ||
|
||
<!-- | ||
Checkstyle configuration that checks the coding conventions from: | ||
- the Java Language Specification at | ||
http://java.sun.com/docs/books/jls/second_edition/html/index.html | ||
- the Sun Code Conventions at http://java.sun.com/docs/codeconv/ | ||
- the Javadoc guidelines at | ||
http://java.sun.com/j2se/javadoc/writingdoccomments/index.html | ||
- the JDK Api documentation http://java.sun.com/j2se/docs/api/index.html | ||
- some best practices | ||
- changes for cs32 are marked CS32 | ||
Checkstyle is very configurable. Be sure to read the documentation at | ||
http://checkstyle.sf.net (or in your downloaded distribution). | ||
Most Checks are configurable, be sure to consult the documentation. | ||
To completely disable a check, just comment it out or delete it from the file. | ||
Finally, it is worth reading the documentation. | ||
--> | ||
|
||
<module name="Checker"> | ||
<!-- | ||
If you set the basedir property below, then all reported file | ||
names will be relative to the specified directory. See | ||
http://checkstyle.sourceforge.net/5.x/config.html#Checker | ||
<property name="basedir" value="${basedir}"/> | ||
--> | ||
|
||
<!-- Checks that a package-info.java file exists for each package. --> | ||
<!-- See http://checkstyle.sf.net/config_javadoc.html#JavadocPackage --> | ||
<!-- <module name="JavadocPackage"/> --> | ||
|
||
<!-- Checks whether files end with a new line. --> | ||
<!-- See http://checkstyle.sf.net/config_misc.html#NewlineAtEndOfFile --> | ||
<module name="NewlineAtEndOfFile"/> | ||
|
||
<!-- Checks that property files contain the same keys. --> | ||
<!-- See http://checkstyle.sf.net/config_misc.html#Translation --> | ||
<module name="Translation"/> | ||
|
||
<!-- Checks for Size Violations. --> | ||
<!-- See http://checkstyle.sf.net/config_sizes.html --> | ||
<module name="FileLength"/> | ||
|
||
<!-- Checks for whitespace --> | ||
<!-- See http://checkstyle.sf.net/config_whitespace.html --> | ||
<module name="FileTabCharacter"/> | ||
|
||
<!-- Miscellaneous other checks. --> | ||
<!-- See http://checkstyle.sf.net/config_misc.html --> | ||
<module name="RegexpSingleline"> | ||
<property name="format" value="\s+$"/> | ||
<property name="minimum" value="0"/> | ||
<property name="maximum" value="0"/> | ||
<property name="message" value="Line has trailing spaces."/> | ||
</module> | ||
|
||
<!-- Checks for Headers --> | ||
<!-- See http://checkstyle.sf.net/config_header.html --> | ||
<!-- <module name="Header"> --> | ||
<!-- <property name="headerFile" value="${checkstyle.header.file}"/> --> | ||
<!-- <property name="fileExtensions" value="java"/> --> | ||
<!-- </module> --> | ||
|
||
<module name="TreeWalker"> | ||
|
||
<!-- Checks for Javadoc comments. --> | ||
<!-- See http://checkstyle.sf.net/config_javadoc.html --> | ||
<module name="JavadocMethod"> | ||
<property name="scope" value="public"/> | ||
</module> | ||
<module name="JavadocType"/> | ||
<!-- <module name="JavadocVariable"/> --> | ||
<module name="JavadocStyle"/> | ||
|
||
|
||
<!-- Checks for Naming Conventions. --> | ||
<!-- See http://checkstyle.sf.net/config_naming.html --> | ||
<module name="ConstantName"/> | ||
<module name="LocalFinalVariableName"/> | ||
<module name="LocalVariableName"/> | ||
<module name="MemberName"/> | ||
<module name="MethodName"/> | ||
<module name="PackageName"/> | ||
<module name="ParameterName"/> | ||
<module name="StaticVariableName"/> | ||
<module name="TypeName"/> | ||
|
||
|
||
<!-- Checks for imports --> | ||
<!-- See http://checkstyle.sf.net/config_import.html --> | ||
<module name="AvoidStarImport"/> | ||
<module name="IllegalImport"/> <!-- defaults to sun.* packages --> | ||
<module name="RedundantImport"/> | ||
<module name="UnusedImports"/> | ||
<!-- <module name="ImportOrder"> | ||
<property name="groups" value="/^javax?\./,org,com"/> | ||
<property name="separated" value="true"/> | ||
<property name="option" value="bottom"/> | ||
</module> --> | ||
|
||
|
||
<!-- Checks for Size Violations. --> | ||
<!-- See http://checkstyle.sf.net/config_sizes.html --> | ||
<module name="LineLength"/> | ||
<module name="MethodLength"/> | ||
<module name="ParameterNumber"/> | ||
|
||
|
||
<!-- Checks for whitespace --> | ||
<!-- See http://checkstyle.sf.net/config_whitespace.html --> | ||
<module name="EmptyForIteratorPad"/> | ||
<module name="GenericWhitespace"/> | ||
<module name="MethodParamPad"/> | ||
<module name="NoWhitespaceAfter"/> | ||
<module name="NoWhitespaceBefore"/> | ||
<module name="OperatorWrap"/> | ||
<module name="ParenPad"/> | ||
<module name="TypecastParenPad"/> | ||
<module name="WhitespaceAfter"/> | ||
<module name="WhitespaceAround"/> | ||
|
||
<!-- not available? <module name="SeparatorWrap"/> --> | ||
|
||
|
||
<!-- Modifier Checks --> | ||
<!-- See http://checkstyle.sf.net/config_modifiers.html --> | ||
<module name="ModifierOrder"/> | ||
<module name="RedundantModifier"/> | ||
|
||
|
||
<!-- Checks for blocks. You know, those {}'s --> | ||
<!-- See http://checkstyle.sf.net/config_blocks.html --> | ||
<module name="AvoidNestedBlocks"/> | ||
<module name="EmptyBlock"/> | ||
<module name="LeftCurly"/> | ||
<module name="NeedBraces"/> | ||
<module name="RightCurly"/> | ||
|
||
|
||
<!-- Checks for common coding problems --> | ||
<!-- See http://checkstyle.sf.net/config_coding.html --> | ||
<!-- CS32 <module name="AvoidInlineConditionals"/> --> | ||
<module name="EmptyStatement"/> | ||
<module name="EqualsHashCode"/> | ||
<module name="HiddenField"> | ||
<property name="ignoreConstructorParameter" value="true"/> | ||
<property name="ignoreSetter" value="true"/> | ||
</module> | ||
<module name="IllegalInstantiation"/> | ||
<module name="InnerAssignment"/> | ||
<module name="MagicNumber"> | ||
<property name="ignoreNumbers" value="-1,0,1,2,3,4,5,6,200,400,401,403,404,405,500,501"/> | ||
</module> | ||
<module name="MissingSwitchDefault"/> | ||
<module name="SimplifyBooleanExpression"/> | ||
<module name="SimplifyBooleanReturn"/> | ||
|
||
<!-- Checks for class design --> | ||
<!-- See http://checkstyle.sf.net/config_design.html --> | ||
<!-- CS32 <module name="DesignForExtension"/> --> | ||
<module name="FinalClass"/> | ||
<module name="HideUtilityClassConstructor"/> | ||
<module name="InterfaceIsType"/> | ||
<module name="VisibilityModifier"/> | ||
|
||
|
||
<!-- Miscellaneous other checks. --> | ||
<!-- See http://checkstyle.sf.net/config_misc.html --> | ||
<module name="ArrayTypeStyle"/> | ||
<!-- <module name="FinalParameters"/> --> | ||
<module name="TodoComment"/> | ||
<module name="UpperEll"/> | ||
<module name="Indentation"> | ||
<property name="basicOffset" value="2"/> | ||
<property name="caseIndent" value="2"/> | ||
<property name="throwsIndent" value="2"/> | ||
</module> | ||
|
||
</module> | ||
|
||
</module> |
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Oops, something went wrong.