![]() |
Konzeptfrage Berechnungen Welches Vorgehen ist sinnvoll?
Hey,
Für mein Programm möchte ich Berechnungen durchführen. Nun meine Frage: "Wie mache ich das am besten? Mit DLL? Mit Funktion und Procedure? oder??? Was möchte ich machen? z.B.: 1. Gleitender Durchschnitt (GD) 2. Wurzel aus(Akt. Kurs-GD)hoch2.../2 3. ... 4. Also ziemlich komplizierte Berechnungen für sehr viele Daten((jeden Tag 1 bis 100) über die letzten Jahre hinweg) Was würdet Ihr mir empfehlen? Bin für jeden Tip dankbar! |
Re: Konzeptfrage Berechnungen Welches Vorgehen ist sinnvoll?
Was für Berechnungen "besser" geeignet ist, entscheidet sich aus dem Verwendungszweck des Programms. Falls du viele Updates an deinen Formeln machst (also die Formeln zum Rechnen umschreibst), solltest du die Berechnungen in einer DLL erledigen.
Ob nun Prozedur oder Funktion ist eigentlich nicht zu beantworten, denn am Ende tun beide das selbe. Sie unterscheiden sich nur darin, wie sie ihre Ergebnisse zurückliefern. |
Re: Konzeptfrage Berechnungen Welches Vorgehen ist sinnvoll?
Also updates sollen eigentlich nicht vorkommen.
Wenn eine Berechnung fertig ist soll es laufen. Welche Arten von Berechnungen gibt es noch? Wie sieht das mit der Geschwindigkeit aus? |
Re: Konzeptfrage Berechnungen Welches Vorgehen ist sinnvoll?
Der Aufruf einer Funktion in einer DLL unterscheidet sich nicht vom Aufruf einer Funktion in einer ausführbaren Exe-Datei. Beides ist gleichschnell. Ob Funktion oder Prozedur hängt davon ab, ob du einen Rückgabewert haben willst oder nicht. Wenn du mehrere Ergebnisse zurückliefern willst, musst du sowieso Ausgabeparameter verwenden.
Da deine Funktionen augenscheinlich mathematische Dinge berechnen sollen, würde ich die ganzen mathematischen Funktionen in eine Unit packen und bei Bedarf dann ins Programm einbinden. |
Re: Konzeptfrage Berechnungen Welches Vorgehen ist sinnvoll?
Zitat:
- 100 Daten (=Werte?) sind doch nicht wirklich viele! - mach doch erstmal eine, (für dich komplizierte [nicht negativ gemeint!)) berechnungs -funktion/prozedur, dann kannst du ja abschätzen ob es wirklich lange dauert... |
Re: Konzeptfrage Berechnungen Welches Vorgehen ist sinnvoll?
Du schreibst das Deine Berechnungen über die letzten fünf Jahre hinweg laufen sollen. Falls Du diese Daten aus einer Datenbank beziehst würde ich versuchen die Berechnung direkt auf Datenbankebene über eine Stored Procedure durchzuführen. Dies entlastet zum einen das Netzwerk und zum anderen ist die Geschwindigkeit auch wesentlich höher.
Gruß, Marcel |
Re: Konzeptfrage Berechnungen Welches Vorgehen ist sinnvoll?
Spielt doch im Prinzip keine große Rolle, ob eine Funktion jetzt 0,0001 oder 0.001 Sekunden braucht, solange sie nicht ständig an einer zeitkritischen Stelle aufgerufen wird.
|
Re: Konzeptfrage Berechnungen Welches Vorgehen ist sinnvoll?
@ IBP
- 100 Werte für jeden Tag, das für jeden Arbeitstag; kommt schon was zusammen - den Gleitenden Durchschnitt habe ich über glaube ich 5 Schleifen hinbekommen; Wenn ich den GD für eine Zeitreihe also ca. 3000 Werte, merke ich ein kleines "Ruckeln" von ca. 1/2 Sekunde(Rechner Leistung mehr als ausreichend!!) - Die Berechnungen sind für Aktien-Indikatoren gedacht. Daraus sollen Wahrscheinlichekeiten berechnet werden, d.h. wenn der Indikator berechnet wurde soll ein Parameter geändert werden und dann neu berechnet werden. |
Re: Konzeptfrage Berechnungen Welches Vorgehen ist sinnvoll?
Zitat:
|
Re: Konzeptfrage Berechnungen Welches Vorgehen ist sinnvoll?
Zitat:
zeig doch mal den code! |
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:35 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz