Swing Orderbook programmieren

C

cmay7

Gast
Hallo,
möchte gerne eine Demoversion für ein Orderbook programmieren, bin jedoch noch ziemlich unerfahren in Java. Das Orderbook(Erklärung hier: Order book) gibt Menge und Preis von zum Verkauf bzw Kauf zur Verfügung stehenden Aktien an. Zum Anfang des Programms soll der Anfangsbestand ausgegeben werden, der kann ja in einem Array stehen.Wie kann der dann ausgelesen werden? Dann soll der Benutzer einen Auftrag eingeben, bestehend aus Kauf/Verkauf, Menge und Limit/kein Limit. Das würde ich mit JOptionPane machen. Am Schluss soll das Orderbook aktualisiert werden, den abgeschlossenen Kauf/Verkauf berücksichtigend. Dabei sollen die jeweiligen Kauf-/Verkaufsmengen in Balken angezeigt werden. Das ist auch eines meiner Probleme: Wie kann ich die Mengen prozentual in Balken anzeigen lassen? Ich meine zuerst brauche ich ein JFrame, nur wie bekomme ich die Balken da rein? Und wie kann ich die Balken nach dem Benutzerauftrag aktualisieren?
Wäre sehr dankbar für eure Hilfe.
Beste Grüße
Christian
 
C

cmay7

Gast
das habe ich bisher:
Java:
import javax.swing.JOptionPane;
import javax.swing.JFrame;

public class Admin {

	private static double [][] bookBuy= {{10000, 99}, {14000, 98}, {5500, 95}, {3000, 90}, {5000, 80}};
	private static double [][] bookSell= {{15000, 102}, {9000, 105}, {3500, 106}, {4000, 110}, {3000, 115}};
	public static void main(String[] args) {
		System.out.println("\t" +"Buy-Orders"+ "\t" + "\t" + "Sell-Order");
		System.out.println("Stock"+"\t" +"Quantity" + "\t" + "Price" + "\t" + "Quantity" + "\t" + "Price");
		for(int i=0;i<bookBuy.length; i++){
			System.out.println(i+1 +"\t" +bookBuy[i][0]+ "\t" + "\t" + bookBuy[i][1]+  "\t"
					+ bookSell[i][0] + "\t" + "\t" + bookSell[i][1]);
		}
		String decision = JOptionPane.showInputDialog("Bitte geben Sie kauf oder verkauf ein:");
		String stock = JOptionPane.showInputDialog("Bitte geben Sie die Aktiennummer an:");
		String amount = JOptionPane.showInputDialog("Bitte geben Sie die Menge der Aktien an, die Sie kaufen bzw. verkaufen möchten:");
		String limit = JOptionPane.showInputDialog("Möchten Sie ein Limit setzen? Falls ja, geben Sie das Limit an, ansonsten tipen Sie no limit ein:");
		
	}

}

d.h. das mit dem Auslesen der matrix hab ich gelöst, ist ja auch nicht schwierig. :)
 
C

cmay7

Gast
mit abändern meinte ich die arrayeinträge erhöhen bzw vermindern, z.B. so:
Java:
 bookBuy[n - 1][0] -= m;
	  bookBuy[n - 1][1]++;
aber habe schon rausgefunden dass das geht.
Zurück zu meiner Ursprungsfrage: Wie kann ich die Daten, die in den Arrays stehen, grafisch mit Balken darstellen?
 
C

cmay7

Gast
habe bisher diesen Code:
Java:
import javax.swing.JOptionPane;
import javax.swing.JFrame;


public class Admin {

	private static double[][] bookBuy = { { 10000, 99 }, { 14000, 98 },
			{ 5500, 95 }, { 3000, 90 }, { 5000, 80 } };
	private static double[][] bookSell = { { 15000, 102 }, { 9000, 105 },
			{ 3500, 106 }, { 4000, 110 }, { 3000, 115 } };

	public static void main(String[] args) {

		System.out.println("\t" + "Buy-Orders" + "\t" + "\t" + "Sell-Order");
		System.out.println("Stock" + "\t" + "Quantity" + "\t" + "Price" + "\t"
				+ "Quantity" + "\t" + "Price");

		for (int i = 0; i < bookBuy.length; i++) {
			System.out.println(i + 1 + "\t" + bookBuy[i][0] + "\t" + "\t"
					+ bookBuy[i][1] + "\t" + bookSell[i][0] + "\t" + "\t"
					+ bookSell[i][1]);
		}
		String begin = JOptionPane
				.showInputDialog("Möchten Sie eine Aktie kaufen?");
		boolean yes = false; // boolean zum Abfragen weiterer Transaktionen
		int j = 0; // Zähler für Anzahl der Transaktionen
		if (begin.equals("ja")) {
			do {
				j++;
				try {
					String decision = JOptionPane
							.showInputDialog("Bitte geben Sie kauf oder verkauf ein:");
					if (!decision.equals("kauf") && !decision.equals("verkauf")) {
						JOptionPane
						.showInputDialog("Falsche Eingabe! Bitte erneut starten!");
					} else {
						String stock = JOptionPane
								.showInputDialog("Bitte geben Sie die Aktiennummer an:");
						int n = Integer.parseInt(stock);

						String amount = JOptionPane
								.showInputDialog("Bitte geben Sie die Menge der Aktien an, die Sie kaufen bzw. verkaufen möchten:");
						double m = Double.parseDouble(amount);

						String limit = JOptionPane
								.showInputDialog("Hier können Sie ein Limit eingeben; falls Sie kein Limit möchten, geben Sie 0 ein.");
						double o = Double.parseDouble(limit);

						if (decision.equals("kauf")) {
							bookBuy[n - 1][0] -= m;
							bookBuy[n - 1][1]++;
							bookSell[n - 1][0] += m;
							bookSell[n - 1][1]--;
						}
						if (decision.equals("verkauf")) {
							bookSell[n - 1][0] -= m;
							bookSell[n - 1][1]++;
							bookBuy[n - 1][0] += m;
							bookBuy[n - 1][1]--;
						}

						System.out.println();
						System.out.println("Aktualisiertes Orderbook nach " + j
								+ "ter Transaktion:");
						System.out.println("\t" + "Buy-Orders" + "\t" + "\t"
								+ "Sell-Order");
						System.out.println("Stock" + "\t" + "Quantity" + "\t"
								+ "Price" + "\t" + "Quantity" + "\t" + "Price");

						for (int i = 0; i < bookBuy.length; i++) {
							System.out.println(i + 1 + "\t" + bookBuy[i][0]
									+ "\t" + "\t" + bookBuy[i][1] + "\t"
									+ bookSell[i][0] + "\t" + "\t"
									+ bookSell[i][1]);
						}
						String goOn = JOptionPane
								.showInputDialog("Möchten Sie eine weitere Aktie kaufen?");
						yes = (goOn.equals("ja"));
					}

				} catch (Exception e) {
					JOptionPane
							.showInputDialog("Falsche Eingabe! Bitte erneut starten!");
				}
			} while (yes);
		}
	}

}
Ich suche jetzt nach einem Mittel, die ausgeführten Transaktionen mit Aktiennummer, Menge, Preis und Limit zu speichern, um nachher wieder darauf zu greifen zu können. was benutze ich da am Besten um diese 4 Eigenschaften zu speichern?
beste grüße
christian
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
N Swing Kugel/Sphäre programmieren AWT, Swing, JavaFX & SWT 12
H RPG Programmieren, label.setLocation funktioniert nicht AWT, Swing, JavaFX & SWT 7
H LayoutManager RPG Programmieren, eigenes Spielfeld grafisch generieren aus Tileset AWT, Swing, JavaFX & SWT 18
T Button für GUI programmieren AWT, Swing, JavaFX & SWT 1
T Wie kann man in java aufwendige grafiken programmieren AWT, Swing, JavaFX & SWT 1
A 2D-Grafik Sprung programmieren AWT, Swing, JavaFX & SWT 35
M Nutzer interface Programmieren AWT, Swing, JavaFX & SWT 2
J Kleines Helikopterspiel programmieren AWT, Swing, JavaFX & SWT 2
R kleinen JPanelEditor programmieren AWT, Swing, JavaFX & SWT 3
C Gesucht: Hilfe beim programmieren. AWT, Swing, JavaFX & SWT 1
C Hilfe beim programmieren mit studiumgebundenes Projekt AWT, Swing, JavaFX & SWT 1
2 Senso bzw SimonSays programmieren AWT, Swing, JavaFX & SWT 8
T Möchte Android-ähnlich programmieren AWT, Swing, JavaFX & SWT 7
R Eclipse GUI Programmieren AWT, Swing, JavaFX & SWT 8
I LookAndFeel HTML Auflösung - Online Editor programmieren AWT, Swing, JavaFX & SWT 2
J 2D-Grafik Menü programmieren AWT, Swing, JavaFX & SWT 2
J Swing Landkarte mithilfe von Swing programmieren AWT, Swing, JavaFX & SWT 4
T Kleinen "Gui Builder" programmieren AWT, Swing, JavaFX & SWT 12
SexyPenny90 Wie Ball programmieren, der im 4 Eck rum fliegt AWT, Swing, JavaFX & SWT 7
I Rechner programmieren AWT, Swing, JavaFX & SWT 6
F UI Toolkit programmieren AWT, Swing, JavaFX & SWT 9
3 Eigenes Frame/Window programmieren AWT, Swing, JavaFX & SWT 2
S Desktop Programmieren AWT, Swing, JavaFX & SWT 2
A Programmieren einer Agenda mit einer Liste (als Applet und .txt zum Speichern) AWT, Swing, JavaFX & SWT 7
B Editor programmieren AWT, Swing, JavaFX & SWT 26
LittleJavaCup Suchmaschine programmieren (wie bei Windows) AWT, Swing, JavaFX & SWT 2
T AWT verschiedene Oberflächen programmieren AWT, Swing, JavaFX & SWT 5
vandread Swing Probleme mit "Game of Life" programmieren AWT, Swing, JavaFX & SWT 8
J Modelleisenbahn - Kontroll-Tafel programmieren AWT, Swing, JavaFX & SWT 3
L Regler in Java Programmieren AWT, Swing, JavaFX & SWT 12
I Preisvergleich programmieren AWT, Swing, JavaFX & SWT 4
P Swing Roter Faden beim Applet GUI Programmieren AWT, Swing, JavaFX & SWT 2
J FAQ programmieren, welche Swing-Elemente AWT, Swing, JavaFX & SWT 7
G GUI - Inhalte wechseln (Eingabe-Assistenten programmieren) AWT, Swing, JavaFX & SWT 2
C Zeitplaner: Terminblock programmieren AWT, Swing, JavaFX & SWT 7

Ähnliche Java Themen

Neue Themen


Oben