Programm funktioniert nicht brauche Hilfe?

Brauche Hilfe. bei diesem Python Programm ich möchte das aus einer Textdatei Wörter zufällig ausgewählt werden und dann in einem Browser auf einer website eingefügt werden und dann ein Button auf der Seite gedrückt wird und falls es falsch ist die Wörter löscht und wieder von vorne anfängt.

from lib2to3.pgen2 import driver

import random

import time

from selenium import webdriver

from selenium.webdriver.chrome.service import Service

from selenium.webdriver.common.by import By # Neu: By importieren

# Funktion zum Einlesen der Wörter aus einer Textdatei und zufällige Auswahl von 6 Wörtern

def get_random_words_from_file(file_path, num_words=6):

with open(file_path, 'r', encoding='utf-8') as f:

words = f.read().splitlines()

return random.sample(words, num_words)

# Funktion zur Automatisierung des Browsers

def automate_browser(word_list, url, textfield_selector, button_selector, result_selector):

# WebDriver für Chrome starten mit dem Service-Objekt

service = Service('/usr/local/bin/chromedriver') # Pfad zum chromedriver anpassen

driver = webdriver.Chrome(service=service)

try:

# Webseite aufrufen

driver.get(url)

while True:

# Wörter in das Textfeld eingeben

textfield = driver.find_element(By.CSS_SELECTOR, textfield_selector).text # Neue Methode verwenden

textfield.clear() # Textfeld leeren

textfield.send_keys(' '.join(word_list)) # Wörter einfügen

# Button klicken

button = driver.find_element(By.CSS_SELECTOR, button_selector) # Neue Methode verwenden

button.click()

# Kurze Pause, um auf die Reaktion der Seite zu warten

time.sleep(2)

# Ergebnis überprüfen

result = driver.find_element(By.CSS_SELECTOR, result_selector) # Neue Methode verwenden

if "korrekt" in result.lower():

print("Eingabe war korrekt!")

break

else:

print("Eingabe war falsch, versuche erneut...")

# Neue Wörter auswählen

word_list = get_random_words_from_file("words.txt")

textfield.clear()

time.sleep(1)

finally:

pass

# Beispielhafte Verwendung:

if __name__ == "__main__":

# Pfad zur Datei mit den Wörtern

file_path = '/usr/local/bin/words.txt'

# URL der Webseite mit dem Textfeld und Button

url = 'URL einfügen'

# CSS-Selektoren für das Textfeld, den Button und das Ergebnisfeld

textfield_selector = '#input1' # Korrekter CSS-Selektor eingeben

button_selector = '#onboarding-form-submit-button' # Korrekter CSS-Selektor eingeben

result_selector = '#onboarding-form-submit-button' # Korrekter CSS-Selektor eingeben

# 12 zufällige Wörter aus der Datei auswählen

word_list = get_random_words_from_file(file_path)

# Automatisierung starten

automate_browser(word_list, url, textfield_selector, button_selector, result_selector)

driver.quit()

Webseite, Code, Programmiersprache, Python, Python 3
Übermittlung von Tradingview nach Bitget?
//@version=5
strategy("Market Long Position on Candle Close", overlay=true)


// Parameter
var float investmentUSD = 1000
var float contracts = na
var float positionSize = na


// Berechnung der Anzahl der Kontrakte basierend auf dem Schlusskurs
if (close != 0)
    contracts := investmentUSD / close


// Aktueller Preis
var float price = close
// Aktuelle Zeit (Unix-Timestamp)
var int timeNow = timenow


// Abfrage der aktuellen und vorherigen Marktposition
var string marketPosition = na
var string prevMarketPosition = na


// Feststellen der aktuellen Position
if (strategy.position_size > 0)
    marketPosition := "long"
else if (strategy.position_size < 0)
    marketPosition := "short"
else
    marketPosition := "flat"


// Setze die vorherige Position
prevMarketPosition := marketPosition
positionSize := strategy.position_size


// Bedingung: Bei jeder neuen Kerze (barstate.isconfirmed) wird eine Long-Market-Position eröffnet
if (barstate.isconfirmed and positionSize == 0)
    strategy.entry("Long", strategy.long, qty=contracts)


// Debugging: Anzeigen der aktuellen Parameter
label.new(bar_index, high, text="Aktion: buy" + 
   "\nKontrakte: " + str.tostring(contracts) + 
   "\nMarktposition: " + marketPosition + 
   "\nVorherige Marktposition: " + prevMarketPosition + 
   "\nPositionsgröße: " + str.tostring(positionSize) + 
   "\nEröffnungspreis: " + str.tostring(price) + 
   "\nSymbol: " + syminfo.tickerid + 
   "\nZeit: " + str.tostring(timeNow))


Hi, ich habe eine Tradingstrategie entwickelt und möchte sie mit meinem broker bitget verbinden. Ich bin bei Bitget auf den alarm-Button gegangen und habe die Webhook Adresse kopiert und in den Alarm bei Tradingview reinkopiert. Das gleiche habe ich mit der Nachricht gemacht. Die sieht wie folgt aus: 
"action":"{{strategy.order.action}}",
"contracts":"{{strategy.order.contracts}}",
"marketPosition":"{{strategy.market_position}}",
"positionSize":"{{strategy.position_size}}",
"prevMarketPosition":"{{strategy.prev_market_position}}",
"price":"{{close}}",
"symbol":"{{ticker}}",
"time":"{{timenow}}"

In meinem Testskript wird einfach jedesmal wenn eine Kerze geschlossen wird eine long Position eröffnet. Leider kommt bei Bitget nichts an. Woran kann das liegen?

Code, Programmiersprache, tradingview, Bitget

Meistgelesene Beiträge zum Thema Code