Nifty ist ein Aktienindex für National Stock Exchange of India. Ich habe eine Datenbank namens livedata, in welcher Tabellenname ist nifty Dies ist ein Aktienindex für National Stock Exchange of India. Ich habe eine Zeile namens ID als Primärschlüssel, Zeit als Zeitstempel, cmp für den spezifischen nifty Stock Index. Während des Tages (09:15:01 A. M. bis 03:29:59 P. M.) in einer Minute (1) bekomme ich ca. 5 Trade Einträge. Ich wollte den bewegten Durchschnitt berechnen. Basierend auf dem letzten Schlusskurs für jede Minute. Für diese aus vielen Einträgen in einer einzigen (1) Minute, ich verlange nur letzte Handelseintrag. Beispielbasis Gewünschtes Ergebnis: - Ex. (Moving Average ADD 20 Periode dh letzte Handelseintrag jeder Minute für die letzten 20 Minuten amp teilen es durch 20. Der Wert sollte kommen auf dem Frontend kann mit Ergebnis mysqlquery (Abfrage) oder sterben (mysqlerror ()) bitte vorschlagen .. Wenn ich den letzten Eintrag von jeder Minute bekommen will, wie schreibe ich den PHP-Code Im Moment komme ich Einträge, die wir verwenden können Loop, während, während, während für diese Bitte helfen, um diesen vielen Dank im Voraus zu lösen Mit SELECT LOOP WHILE DO WHILE etc. MySQL unterstützt keine analytischen Funktionen, die Aufgaben dieser Art viel schwieriger machen, als es in vielen anderen RDBMS-Engines wäre. Während man immer noch einen reinen set-basierten SQL-Ansatz verwenden kann, wäre das so Beide viel schwerer zu verstehen und vermutlich weit weniger effizient als ein kleiner Abkürzung mit einer User-Variable: Die äußere Abfrage sollte ziemlich selbsterklärend sein: es nimmt einfach den Mittelwert der cmp-Werte aus der inneren Abfrage, die innere Abfrage bewegt sich Rückwärts über den raffinierten Tisch, dank seiner ORDER BY-Klausel mit der Variablen t, um die letzte Minute zu verfolgen, für die wir bereits entschieden haben, stellt die WHERE-Klausel sicher, dass nur Einträge, die dieser Minute vorangehen, als nächstes für den zweiten Begriff in der SELECT-Liste aktualisiert werden T zum Anfang der gefundenen Minute, wenn ein Spiel gefunden wird. Schließlich stellt die LIMIT-Klausel sicher, dass die innere Abfrage beendet wird, sobald der 20. Datensatz gefunden wurde. Diese Abfrage würde am effizientesten berechnet werden, wenn es einen zusammengesetzten Index gibt (dessen Zeit (cmp) die am weitesten links liegenden Spalten in dieser Reihenfolge sind. Zum Beispiel: beantwortet 11. Februar 15 um 19: 37 Ich muss die letzten 7 Tage Arbeitsstunden in einer flachen Datei Leseschleife zu verfolgen. Es wird verwendet, um die Ermüdbarkeit der Arbeit zu beheben. Im Moment habe ich etwas, das funktioniert, aber es scheint ziemlich ausführlich und ich bin nicht sicher, ob theres ein Muster, das mehr prägnant ist. Derzeit habe ich eine Java-Klasse mit einem statischen Array, um die letzten x Tage Daten zu halten, dann, wie ich durch die Datei lese, hacke ich das erste Element und verschiebe das andere 6 (für eine Woche rollende Summe) zurück um eins. Die Verarbeitung dieses statischen Arrays erfolgt in seiner eigenen Methode, dh. Meine Frage: Ist das eine vernünftige Design-Ansatz, oder gibt es etwas blendend offensichtlich und einfach, diese Aufgabe zu tun Danke Jungs fragten Aug 30 11 um 14:33 Danke alot Jungs: I39ve bekam die Nachricht: Verwenden Sie ein übergeordnetes Objekt und nutzen Sie die Relevante Methoden oder einen Kreispuffer. Tolle Antworten, alle von ihnen. Wenn du darüber nachdenkst, brauchst du immer Zugriff auf das gesamte Array, so dass du diesen ersten Eintrag loswerden kannst - was ich mir nicht ganz sicher war. Ich entschuldigte mich, dass ich nicht ein paar Liner verpasst hatte und war im Grunde genommen eine vernünftige, wenn nicht effiziente und knappe Spur. Das ist es, was ich an dieser Seite liebe: hochwertige, relevante Antworten von Leuten, die ihre Sht kennen. Ndash Pete855217 Aug 30 11 at 15:05 Warum initialisieren Sie runningTotal auf null Was ist sein Typ Wo es deklariert ist Es wäre gut, wenn man einige Code-Samples passt, die dem tatsächlichen Java-Code ähneln. Wenn du fortfährst, wäre meine Kritik die folgende: Deine Funktion ist zu viel. Eine Funktion oder Methode sollte zusammenhängend sein. Genauer gesagt, sollten sie nur eins und nur eins tun. Noch schlimmer, was passiert in deiner for-Schleife, wenn x 5 Du kopierst runningTotal6 in runningTotal5. Aber dann haben Sie zwei Kopien des gleichen Wertes an Position 5 und 6. In Ihrem Design, Ihre Funktion movesshuffles die Elemente in Ihrem Array berechnet die Gesamtausdruck Zeug auf Standard-Fehler gibt die Summe Es ist zu viel. Mein erster Vorschlag ist nicht, Sachen herum in der Array zu bewegen. Stattdessen implementiere ich einen kreisförmigen Puffer und verwende ihn statt des Arrays. Es wird Ihr Design zu vereinfachen. Mein zweiter Vorschlag ist, Dinge in Funktionen zusammenzufassen, die zusammenhängen: haben eine Datenstruktur (ein kreisförmiger Puffer), die es Ihnen erlaubt, es hinzuzufügen (und das fällt den ältesten Eintrag, wenn es seine Kapazität erreicht.) Haben die Datenstruktur implementieren Interator haben eine Funktion, die die Summe auf dem Iterator berechnet (Sie interessieren sich nicht, wenn Sie die Summe aus einem Array, einer Liste oder einem kreisförmigen Bufer berechnen.) Nennen Sie es nicht total. Nennen Sie es Summe, was ist das, was Sie rechnen. Das ist, was Id tun :) That39s super Info Luis, aber denken Sie daran, diese Funktion ist ein kleiner Teil der Funktionalität der Klasse, und es wäre übertrieben, um zu viel Code hinzufügen, um es perfekt zu machen. Sie sind technisch korrekt, und ich verstehe, dass mein Code 39 zu viel39 ist, aber zur gleichen Zeit manchmal ist es besser, auf der Seite des kleineren, klareren Codes zu irren, als für Perfektion zu gehen. Angesichts meiner Java-Fähigkeiten, sogar die Pseudocode Sie beschreiben Kompilieren würde ich blasen mein Budget auf diesem (), aber danke für die klare Beschreibung. Ndash Pete855217 Aug 31 11 at 2:23 Hmmm, es geht nicht um Perfektion, sondern um etablierte industrielle Praktiken, die wir für die letzten 3 Jahrzehnte kennen. Sauberer Code ist immer einer, der partitioniert ist. Wir haben jahrzehntelange Beweise dafür, dass dies der Weg ist, in den allgemeinen Fall zu gehen (in Bezug auf Kosteneffizienz, Defektreduktion, Verständnis usw.). Es sei denn, es ist wegwerfen Code für eine einmalige Art von Ding. Es ist niemals kostspielig, dies zu tun, wenn man auf diese Weise irgendeine Problemanalyse startet. Codierung 101, brechen das Problem und der Code folgt, weder Overkill noch schwierig) ndash luis. espinal Ihre Aufgabe ist zu einfach und die Vorwürfe, die Sie adoptiert haben, ist sicherlich gut für den Job. Allerdings, wenn Sie ein besseres Design verwenden möchten, müssen Sie loszuwerden, alle diese Nummer Bewegung Sie besser verwenden eine FIFO-Warteschlange und machen gute Nutzung von Push-und Pop-Methoden, die Art und Weise der Code nicht reflektieren jede Datenbewegung, nur die beiden logischen Aktionen Von neuen Daten und entfernen Sie Daten älter als 7 Tage. Beantwortet Aug 30 11 bei 14: 49Liste von Aktien in BANK NIFTY index Diese Liste gibt Ihnen eine Vogelperspektive von BANK NIFTY Index Aktien. Sie können schnell sehen, welche die bestmöglichen Bestände im BANK NIFTY Index sind und welche am schlimmsten sind. HAFTUNGSAUSSCHLUSS: DIESE SIND NICHT EMPFEHLUNGEN. Dies ist nur eine Shortlist von Aktien, die von einem Computer-Programm ausgewählt werden, weil sie bestimmte Charaktere, die Händler in der Regel für die Auswahl der Aktien zu handeln. Wenn Sie eine dieser Aktien für Ihre Trades auswählen, tun Sie dies auf eigene Gefahr. Stellen Sie sicher, dass Sie gute Geld-Amp-Risikomanagement-Strategien zum Handel verwenden. Avg Volume (50 Tag) AXISBANK BANKINDIA HDFCBANK ICICIBANK FEDERALBNK PNB INDUSINDBK SBIN CANBK BANKBARODA YESBANK KOTAKBANK HINWEIS: Klicken Sie auf das Diagramm Bild, um die Aktie Tageskarte zu sehen und klicken Sie auf das Stock Symbol, um die quotStockGlancequot für den Bestand zu sehen. StockGlance ist unsere neue Funktion, die die Zusammenfassung einer Aktie - intraday, tägliche Amp-Wochendiagramm, viele Indikatorwerte, Pivot-Nockenebenen etc. gibt. Kopie 2005 - 2017 iCharts Technologies Private Limited, Hyderabad, Indien iCharts Logo ist ein eingetragenes Warenzeichen von iCharts Technologies Private Limited BITTE LESEN SIE UNSERER HAFTUNGSAUSSCHLUSS, BEVOR SIE UNSERE WEBSITE VERWENDEN.
Comments
Post a Comment