summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKostya <mail@sartin.in>2026-08-06 21:17:22 +0000
committerKostya <mail@sartin.in>2026-08-06 21:17:22 +0000
commit10e36a8910653a73910b7be654b3467ece511d9b (patch)
tree08a79d79ab1c2355c02cb49462f164291ef63eda
parentc3946151d543f568983f1ba16a963ea7dd4b9055 (diff)
downloadguess-market-10e36a8910653a73910b7be654b3467ece511d9b.tar.gz
guess-market-10e36a8910653a73910b7be654b3467ece511d9b.tar.xz
guess-market-10e36a8910653a73910b7be654b3467ece511d9b.zip
wireframe
-rw-r--r--.gitignore1
-rw-r--r--.project28
-rw-r--r--modules/api/.classpath (renamed from .classpath)0
-rw-r--r--modules/api/.project28
-rw-r--r--modules/api/src/main/java/market/guess/api/Commission.java3
-rw-r--r--modules/api/src/main/java/market/guess/api/CommissionChargeType.java6
-rw-r--r--modules/api/src/main/java/market/guess/api/EventDTO.java1
-rw-r--r--modules/api/src/main/java/market/guess/api/EventStatus.java7
-rw-r--r--modules/api/src/main/java/market/guess/api/LoadResultDTO.java3
-rw-r--r--modules/api/src/test/java/com/example/AppTest.java (renamed from src/test/java/com/example/AppTest.java)0
-rw-r--r--modules/engine/.classpath22
-rw-r--r--modules/engine/.project28
-rw-r--r--modules/engine/src/main/java/market/guess/engine/GuessMarketEngine.java7
-rw-r--r--modules/engine/src/main/java/market/guess/engine/TradingMechanism.java7
-rw-r--r--modules/engine/src/main/java/market/guess/engine/mechanism/LmsrTradingMechanism.java13
-rw-r--r--modules/engine/src/main/java/market/guess/engine/mechanism/OrderBookMechanism.java13
-rw-r--r--modules/engine/src/test/java/com/example/AppTest.java3
-rw-r--r--modules/exception/.classpath20
-rw-r--r--modules/exception/.project28
-rw-r--r--modules/exception/src/confing.properties (renamed from src/confing.properties)0
-rw-r--r--modules/exception/src/main/java/market/guess/exception/GuessMarketException.java7
-rw-r--r--modules/exception/src/test/java/com/example/AppTest.java3
-rw-r--r--modules/ui-console/.classpath20
-rw-r--r--modules/ui-console/.project28
-rw-r--r--modules/ui-console/src/main/java/market/guess/ui/console/App.java (renamed from src/main/java/com/example/App.java)2
-rw-r--r--modules/ui-console/src/test/java/com/example/AppTest.java3
-rw-r--r--modules/ui-desktop/.classpath20
-rw-r--r--modules/ui-desktop/.project28
-rw-r--r--modules/ui-desktop/src/main/java/market/guess/ui/desktop/App.java5
-rw-r--r--tools/build.bat (renamed from build.bat)0
-rwxr-xr-xtools/build.sh (renamed from build.sh)0
-rw-r--r--tools/run.bat (renamed from run.bat)0
-rw-r--r--tools/run.sh (renamed from run.sh)0
33 files changed, 309 insertions, 25 deletions
diff --git a/.gitignore b/.gitignore
index 774d6b1..8e3b8c9 100644
--- a/.gitignore
+++ b/.gitignore
@@ -2,6 +2,7 @@
2bin/ 2bin/
3stage/ 3stage/
4dist/ 4dist/
5test-data/
5*.class 6*.class
6 7
7# Ignore OS-specific files 8# Ignore OS-specific files
diff --git a/.project b/.project
index c3b90e2..3f22e24 100644
--- a/.project
+++ b/.project
@@ -1,28 +1,8 @@
1<?xml version="1.0" encoding="UTF-8"?> 1<?xml version="1.0" encoding="UTF-8"?>
2<projectDescription> 2<projectDescription>
3 <name>App</name> 3 <name>guess-market</name>
4 <comment></comment> 4 <comment></comment>
5 <projects> 5 <projects></projects>
6 </projects> 6 <buildSpec></buildSpec>
7 <buildSpec> 7 <natures></natures>
8 <buildCommand>
9 <name>org.eclipse.jdt.core.javabuilder</name>
10 <arguments>
11 </arguments>
12 </buildCommand>
13 </buildSpec>
14 <natures>
15 <nature>org.eclipse.jdt.core.javanature</nature>
16 </natures>
17 <filteredResources>
18 <filter>
19 <id>1784965956299</id>
20 <name></name>
21 <type>30</type>
22 <matcher>
23 <id>org.eclipse.core.resources.regexFilterMatcher</id>
24 <arguments>node_modules|\.git|__CREATED_BY_JAVA_LANGUAGE_SERVER__</arguments>
25 </matcher>
26 </filter>
27 </filteredResources>
28</projectDescription> 8</projectDescription>
diff --git a/.classpath b/modules/api/.classpath
index 7f8bc25..7f8bc25 100644
--- a/.classpath
+++ b/modules/api/.classpath
diff --git a/modules/api/.project b/modules/api/.project
new file mode 100644
index 0000000..0dc50c5
--- /dev/null
+++ b/modules/api/.project
@@ -0,0 +1,28 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<projectDescription>
3 <name>guess-market-api</name>
4 <comment></comment>
5 <projects>
6 </projects>
7 <buildSpec>
8 <buildCommand>
9 <name>org.eclipse.jdt.core.javabuilder</name>
10 <arguments>
11 </arguments>
12 </buildCommand>
13 </buildSpec>
14 <natures>
15 <nature>org.eclipse.jdt.core.javanature</nature>
16 </natures>
17 <filteredResources>
18 <filter>
19 <id>1786044291084</id>
20 <name></name>
21 <type>30</type>
22 <matcher>
23 <id>org.eclipse.core.resources.regexFilterMatcher</id>
24 <arguments>node_modules|\.git|__CREATED_BY_JAVA_LANGUAGE_SERVER__</arguments>
25 </matcher>
26 </filter>
27 </filteredResources>
28</projectDescription>
diff --git a/modules/api/src/main/java/market/guess/api/Commission.java b/modules/api/src/main/java/market/guess/api/Commission.java
new file mode 100644
index 0000000..96cab8a
--- /dev/null
+++ b/modules/api/src/main/java/market/guess/api/Commission.java
@@ -0,0 +1,3 @@
1package market.guess.api;
2
3public record Commission(CommissionChargeType type, int percentage) {}
diff --git a/modules/api/src/main/java/market/guess/api/CommissionChargeType.java b/modules/api/src/main/java/market/guess/api/CommissionChargeType.java
new file mode 100644
index 0000000..75e409b
--- /dev/null
+++ b/modules/api/src/main/java/market/guess/api/CommissionChargeType.java
@@ -0,0 +1,6 @@
1package market.guess.api;
2
3public enum CommissionChargeType {
4 ON_CLOSE,
5 ON_PURCHASE
6}
diff --git a/modules/api/src/main/java/market/guess/api/EventDTO.java b/modules/api/src/main/java/market/guess/api/EventDTO.java
new file mode 100644
index 0000000..66b2312
--- /dev/null
+++ b/modules/api/src/main/java/market/guess/api/EventDTO.java
@@ -0,0 +1 @@
package market.guess.api;
diff --git a/modules/api/src/main/java/market/guess/api/EventStatus.java b/modules/api/src/main/java/market/guess/api/EventStatus.java
new file mode 100644
index 0000000..acd7542
--- /dev/null
+++ b/modules/api/src/main/java/market/guess/api/EventStatus.java
@@ -0,0 +1,7 @@
1package market.guess.api;
2
3public enum EventStatus {
4 NOT_STARTED,
5 ACTIVE,
6 CLOSED
7}
diff --git a/modules/api/src/main/java/market/guess/api/LoadResultDTO.java b/modules/api/src/main/java/market/guess/api/LoadResultDTO.java
new file mode 100644
index 0000000..cf3630b
--- /dev/null
+++ b/modules/api/src/main/java/market/guess/api/LoadResultDTO.java
@@ -0,0 +1,3 @@
1package market.guess.api;
2
3public record LoadResultDTO() {}
diff --git a/src/test/java/com/example/AppTest.java b/modules/api/src/test/java/com/example/AppTest.java
index 0b08c28..0b08c28 100644
--- a/src/test/java/com/example/AppTest.java
+++ b/modules/api/src/test/java/com/example/AppTest.java
diff --git a/modules/engine/.classpath b/modules/engine/.classpath
new file mode 100644
index 0000000..27bd88b
--- /dev/null
+++ b/modules/engine/.classpath
@@ -0,0 +1,22 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<classpath>
3 <!-- Defines your source folder -->
4 <classpathentry kind="src" output="bin/classes" path="src/main/java">
5 <attributes>
6 <attribute name="optional" value="true"/>
7 </attributes>
8 </classpathentry>
9 <classpathentry kind="src" output="bin/test-classes" path="src/test/java">
10 <attributes>
11 <attribute name="optional" value="true"/>
12 <attribute name="test" value="true"/>
13 </attributes>
14 <classpathentry kind="prj" path="/guess-market-api">
15 </classpathentry>
16 </classpathentry>
17 <!-- Defines the standard Java System Library -->
18 <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
19 <!-- Defines where compiled .class files go -->
20 <classpathentry kind="output" path="bin"/>
21</classpath>
22
diff --git a/modules/engine/.project b/modules/engine/.project
new file mode 100644
index 0000000..943db42
--- /dev/null
+++ b/modules/engine/.project
@@ -0,0 +1,28 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<projectDescription>
3 <name>gauss-market-engine</name>
4 <comment></comment>
5 <projects>
6 <project>gauss-market-api</project>
7 </projects>
8 <buildSpec>
9 <buildCommand>
10 <name>org.eclipse.jdt.core.javabuilder</name>
11 <arguments></arguments>
12 </buildCommand>
13 </buildSpec>
14 <natures>
15 <nature>org.eclipse.jdt.core.javanature</nature>
16 </natures>
17 <filteredResources>
18 <filter>
19 <id>1784965956299</id>
20 <name></name>
21 <type>30</type>
22 <matcher>
23 <id>org.eclipse.core.resources.regexFilterMatcher</id>
24 <arguments>node_modules|\.git|__CREATED_BY_JAVA_LANGUAGE_SERVER__</arguments>
25 </matcher>
26 </filter>
27 </filteredResources>
28</projectDescription>
diff --git a/modules/engine/src/main/java/market/guess/engine/GuessMarketEngine.java b/modules/engine/src/main/java/market/guess/engine/GuessMarketEngine.java
new file mode 100644
index 0000000..aab3cf4
--- /dev/null
+++ b/modules/engine/src/main/java/market/guess/engine/GuessMarketEngine.java
@@ -0,0 +1,7 @@
1package market.guess.engine;
2
3import market.guess.api.LoadResultDTO;
4
5public interface GuessMarketEngine {
6 LoadResultDTO loadEvents();
7}
diff --git a/modules/engine/src/main/java/market/guess/engine/TradingMechanism.java b/modules/engine/src/main/java/market/guess/engine/TradingMechanism.java
new file mode 100644
index 0000000..5a235ed
--- /dev/null
+++ b/modules/engine/src/main/java/market/guess/engine/TradingMechanism.java
@@ -0,0 +1,7 @@
1package market.guess.engine;
2
3import java.math.BigDecimal;
4
5public interface TradingMechanism {
6 BigDecimal initialCost();
7}
diff --git a/modules/engine/src/main/java/market/guess/engine/mechanism/LmsrTradingMechanism.java b/modules/engine/src/main/java/market/guess/engine/mechanism/LmsrTradingMechanism.java
new file mode 100644
index 0000000..93826b7
--- /dev/null
+++ b/modules/engine/src/main/java/market/guess/engine/mechanism/LmsrTradingMechanism.java
@@ -0,0 +1,13 @@
1package market.guess.engine.mechanism;
2
3import java.math.BigDecimal;
4import market.guess.engine.TradingMechanism;
5
6public class LmsrTradingMechanism implements TradingMechanism {
7
8 @Override
9 public BigDecimal initialCost() {
10 // TODO Auto-generated method stub
11 throw new UnsupportedOperationException("Unimplemented method 'initialCost'");
12 }
13}
diff --git a/modules/engine/src/main/java/market/guess/engine/mechanism/OrderBookMechanism.java b/modules/engine/src/main/java/market/guess/engine/mechanism/OrderBookMechanism.java
new file mode 100644
index 0000000..079b204
--- /dev/null
+++ b/modules/engine/src/main/java/market/guess/engine/mechanism/OrderBookMechanism.java
@@ -0,0 +1,13 @@
1package market.guess.engine.mechanism;
2
3import java.math.BigDecimal;
4import market.guess.engine.TradingMechanism;
5
6public class OrderBookMechanism implements TradingMechanism {
7
8 @Override
9 public BigDecimal initialCost() {
10 // TODO Auto-generated method stub
11 throw new UnsupportedOperationException("Unimplemented method 'initialCost'");
12 }
13}
diff --git a/modules/engine/src/test/java/com/example/AppTest.java b/modules/engine/src/test/java/com/example/AppTest.java
new file mode 100644
index 0000000..0b08c28
--- /dev/null
+++ b/modules/engine/src/test/java/com/example/AppTest.java
@@ -0,0 +1,3 @@
1package com.example;
2
3public class AppTest {}
diff --git a/modules/exception/.classpath b/modules/exception/.classpath
new file mode 100644
index 0000000..7f8bc25
--- /dev/null
+++ b/modules/exception/.classpath
@@ -0,0 +1,20 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<classpath>
3 <!-- Defines your source folder -->
4 <classpathentry kind="src" output="bin/classes" path="src/main/java">
5 <attributes>
6 <attribute name="optional" value="true"/>
7 </attributes>
8 </classpathentry>
9 <classpathentry kind="src" output="bin/test-classes" path="src/test/java">
10 <attributes>
11 <attribute name="optional" value="true"/>
12 <attribute name="test" value="true"/>
13 </attributes>
14 </classpathentry>
15 <!-- Defines the standard Java System Library -->
16 <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
17 <!-- Defines where compiled .class files go -->
18 <classpathentry kind="output" path="bin"/>
19</classpath>
20
diff --git a/modules/exception/.project b/modules/exception/.project
new file mode 100644
index 0000000..5af632c
--- /dev/null
+++ b/modules/exception/.project
@@ -0,0 +1,28 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<projectDescription>
3 <name>guess-market-exception</name>
4 <comment></comment>
5 <projects>
6 </projects>
7 <buildSpec>
8 <buildCommand>
9 <name>org.eclipse.jdt.core.javabuilder</name>
10 <arguments>
11 </arguments>
12 </buildCommand>
13 </buildSpec>
14 <natures>
15 <nature>org.eclipse.jdt.core.javanature</nature>
16 </natures>
17 <filteredResources>
18 <filter>
19 <id>1784965956299</id>
20 <name></name>
21 <type>30</type>
22 <matcher>
23 <id>org.eclipse.core.resources.regexFilterMatcher</id>
24 <arguments>node_modules|\.git|__CREATED_BY_JAVA_LANGUAGE_SERVER__</arguments>
25 </matcher>
26 </filter>
27 </filteredResources>
28</projectDescription>
diff --git a/src/confing.properties b/modules/exception/src/confing.properties
index e69de29..e69de29 100644
--- a/src/confing.properties
+++ b/modules/exception/src/confing.properties
diff --git a/modules/exception/src/main/java/market/guess/exception/GuessMarketException.java b/modules/exception/src/main/java/market/guess/exception/GuessMarketException.java
new file mode 100644
index 0000000..68a3053
--- /dev/null
+++ b/modules/exception/src/main/java/market/guess/exception/GuessMarketException.java
@@ -0,0 +1,7 @@
1package market.guess.exception;
2
3public class GuessMarketException extends Exception {
4 public GuessMarketException(String message) {
5 super(message);
6 }
7}
diff --git a/modules/exception/src/test/java/com/example/AppTest.java b/modules/exception/src/test/java/com/example/AppTest.java
new file mode 100644
index 0000000..0b08c28
--- /dev/null
+++ b/modules/exception/src/test/java/com/example/AppTest.java
@@ -0,0 +1,3 @@
1package com.example;
2
3public class AppTest {}
diff --git a/modules/ui-console/.classpath b/modules/ui-console/.classpath
new file mode 100644
index 0000000..7f8bc25
--- /dev/null
+++ b/modules/ui-console/.classpath
@@ -0,0 +1,20 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<classpath>
3 <!-- Defines your source folder -->
4 <classpathentry kind="src" output="bin/classes" path="src/main/java">
5 <attributes>
6 <attribute name="optional" value="true"/>
7 </attributes>
8 </classpathentry>
9 <classpathentry kind="src" output="bin/test-classes" path="src/test/java">
10 <attributes>
11 <attribute name="optional" value="true"/>
12 <attribute name="test" value="true"/>
13 </attributes>
14 </classpathentry>
15 <!-- Defines the standard Java System Library -->
16 <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
17 <!-- Defines where compiled .class files go -->
18 <classpathentry kind="output" path="bin"/>
19</classpath>
20
diff --git a/modules/ui-console/.project b/modules/ui-console/.project
new file mode 100644
index 0000000..9e047cb
--- /dev/null
+++ b/modules/ui-console/.project
@@ -0,0 +1,28 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<projectDescription>
3 <name>guess-market-ui-console</name>
4 <comment></comment>
5 <projects>
6 </projects>
7 <buildSpec>
8 <buildCommand>
9 <name>org.eclipse.jdt.core.javabuilder</name>
10 <arguments>
11 </arguments>
12 </buildCommand>
13 </buildSpec>
14 <natures>
15 <nature>org.eclipse.jdt.core.javanature</nature>
16 </natures>
17 <filteredResources>
18 <filter>
19 <id>1784965956299</id>
20 <name></name>
21 <type>30</type>
22 <matcher>
23 <id>org.eclipse.core.resources.regexFilterMatcher</id>
24 <arguments>node_modules|\.git|__CREATED_BY_JAVA_LANGUAGE_SERVER__</arguments>
25 </matcher>
26 </filter>
27 </filteredResources>
28</projectDescription>
diff --git a/src/main/java/com/example/App.java b/modules/ui-console/src/main/java/market/guess/ui/console/App.java
index 5777405..06be86d 100644
--- a/src/main/java/com/example/App.java
+++ b/modules/ui-console/src/main/java/market/guess/ui/console/App.java
@@ -1,4 +1,4 @@
1package com.example; 1package market.guess.ui.console;
2 2
3public class App { 3public class App {
4 public static void main() { 4 public static void main() {
diff --git a/modules/ui-console/src/test/java/com/example/AppTest.java b/modules/ui-console/src/test/java/com/example/AppTest.java
new file mode 100644
index 0000000..0b08c28
--- /dev/null
+++ b/modules/ui-console/src/test/java/com/example/AppTest.java
@@ -0,0 +1,3 @@
1package com.example;
2
3public class AppTest {}
diff --git a/modules/ui-desktop/.classpath b/modules/ui-desktop/.classpath
new file mode 100644
index 0000000..7f8bc25
--- /dev/null
+++ b/modules/ui-desktop/.classpath
@@ -0,0 +1,20 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<classpath>
3 <!-- Defines your source folder -->
4 <classpathentry kind="src" output="bin/classes" path="src/main/java">
5 <attributes>
6 <attribute name="optional" value="true"/>
7 </attributes>
8 </classpathentry>
9 <classpathentry kind="src" output="bin/test-classes" path="src/test/java">
10 <attributes>
11 <attribute name="optional" value="true"/>
12 <attribute name="test" value="true"/>
13 </attributes>
14 </classpathentry>
15 <!-- Defines the standard Java System Library -->
16 <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
17 <!-- Defines where compiled .class files go -->
18 <classpathentry kind="output" path="bin"/>
19</classpath>
20
diff --git a/modules/ui-desktop/.project b/modules/ui-desktop/.project
new file mode 100644
index 0000000..e421bbf
--- /dev/null
+++ b/modules/ui-desktop/.project
@@ -0,0 +1,28 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<projectDescription>
3 <name>guess-market-ui-desktop</name>
4 <comment></comment>
5 <projects>
6 </projects>
7 <buildSpec>
8 <buildCommand>
9 <name>org.eclipse.jdt.core.javabuilder</name>
10 <arguments>
11 </arguments>
12 </buildCommand>
13 </buildSpec>
14 <natures>
15 <nature>org.eclipse.jdt.core.javanature</nature>
16 </natures>
17 <filteredResources>
18 <filter>
19 <id>1786044291088</id>
20 <name></name>
21 <type>30</type>
22 <matcher>
23 <id>org.eclipse.core.resources.regexFilterMatcher</id>
24 <arguments>node_modules|\.git|__CREATED_BY_JAVA_LANGUAGE_SERVER__</arguments>
25 </matcher>
26 </filter>
27 </filteredResources>
28</projectDescription>
diff --git a/modules/ui-desktop/src/main/java/market/guess/ui/desktop/App.java b/modules/ui-desktop/src/main/java/market/guess/ui/desktop/App.java
new file mode 100644
index 0000000..70a7e7d
--- /dev/null
+++ b/modules/ui-desktop/src/main/java/market/guess/ui/desktop/App.java
@@ -0,0 +1,5 @@
1package market.guess.ui.desktop;
2
3public class App {
4 public static void main(String[] args) {}
5}
diff --git a/build.bat b/tools/build.bat
index eb6b460..eb6b460 100644
--- a/build.bat
+++ b/tools/build.bat
diff --git a/build.sh b/tools/build.sh
index 6fdf7e1..6fdf7e1 100755
--- a/build.sh
+++ b/tools/build.sh
diff --git a/run.bat b/tools/run.bat
index 8480652..8480652 100644
--- a/run.bat
+++ b/tools/run.bat
diff --git a/run.sh b/tools/run.sh
index 55f1094..55f1094 100644
--- a/run.sh
+++ b/tools/run.sh